code: def __call__(self, arg):
      if is_scalar(arg):
          ret = pd.to_datetime(
              arg,
              errors=self.errors,
              dayfirst=self.dayfirst,
              yearfirst=self.yearfirst,
              utc=self.utc,
              format=self.format,
              exact=self.exact,
              unit=self.unit,
              infer_datetime_format=self.infer_datetime_format,
              origin=self.origin,
              cache=self.cache,
          )
          return astensor(ret)
  
      dtype = np.datetime64(1, "ns").dtype
      if isinstance(arg, (pd.Series, SERIES_TYPE)):
          arg = asseries(arg)
          return self.new_series(
              [arg],
              shape=arg.shape,
              dtype=dtype,
              index_value=arg.index_value,
              name=arg.name,
          )
      if is_dict_like(arg) or isinstance(arg, DATAFRAME_TYPE):
          arg = asdataframe(arg)
          columns = arg.columns_value.to_pandas().tolist()
          if sorted(columns) != sorted(["year", "month", "day"]):
              missing = ",".join(
                  c
                  for c in ["day", "month", "year"]
                  if c not in columns
              )
              raise ValueError(
                  "to assemble mappings requires at least "
                  f"that [year, month, day] be specified: [{missing}] is missing"
              )
          return self.new_series(
              [arg],
              shape=(arg.shape[0],),
              dtype=dtype,
              index_value=arg.index_value,
          )
      elif isinstance(arg, (pd.Index, INDEX_TYPE)):
          arg = asindex(arg)
          return self.new_index(
              [arg],
              shape=arg.shape,
              dtype=dtype,
              index_value=parse_index(
                  pd.Index([], dtype=dtype), self._params, arg
              ),
              name=arg.name,
          )
      else:
          arg = astensor(arg)
          if arg.ndim != 1:
              raise TypeError(
                  "arg must be a string, datetime, "
                  "list, tuple, 1-d tensor, or Series"
              )
          return self.new_index(
              [arg],
              shape=arg.shape,
              dtype=dtype,
              index_value=parse_index(
                  pd.Index([], dtype=dtype), self._params, arg
              ),
          )
  
imports: from functools import partial
  from typing import Any
  import numpy
  import pandas
  from pandas.api.types import is_scalar, is_dict_like
  from ...None import opcodes
  from ...core import recursive_tile
  from ...serialization.serializables import KeyField, StringField, BoolField, AnyField
  from ...tensor import tensor
  from ...tensor.core import TENSOR_CHUNK_TYPE
  from ..core import DATAFRAME_TYPE, SERIES_TYPE, INDEX_TYPE, INDEX_CHUNK_TYPE
  from ..initializer import DataFrame, Series, Index
  from ..operands import DataFrameOperand, DataFrameOperandMixin
  from ..utils import parse_index, lazy_import
label_desc: Use image node_id 3 for calling the DataFrameToDatetime obj's underlying member method code with example usage: obj.__call__(arg) and returns: astensor, self, self, self, self