code: def check_array_like(y: TileableType, name: str) -> TileableType:
      if y is None:
          return
      y = convert_to_tensor_or_dataframe(y)
      if isinstance(y, DATAFRAME_TYPE):
          y = y.iloc[:, 0]
      y = astensor(y)
      if y.ndim != 1:
          raise ValueError(f"Expecting 1-d {name}, got: {y.ndim}-d")
      return y
  
imports: import itertools
  from typing import List, Union
  import numpy
  from ....None import opcodes
  from ....core import get_output_types, recursive_tile
  from ....core.context import get_context, Context
  from ....dataframe.core import DATAFRAME_TYPE
  from ....serialization.serializables import KeyField, Float64Field, ListField, BoolField
  from ....tensor.core import TENSOR_TYPE, TENSOR_CHUNK_TYPE
  from ....tensor import tensor
  from ....typing import TileableType, ChunkType
  from ....utils import has_unknown_shape, ensure_own_data, build_fetch
  from ...operands import LearnOperand, LearnOperandMixin
  from ...utils import convert_to_tensor_or_dataframe, concat_chunks
label_desc: Use image node_id 2 for calling a global function with example usage: check_array_like(y, name) and returns: y