def at_time(self, time: Union[(datetime.time, str)], asof: bool=False, axis: Axis=0) -> 'DataFrame':
    "\n        Select values at particular time of day (example: 9:30AM).\n\n        Parameters\n        ----------\n        time : datetime.time or str\n        axis : {0 or 'index', 1 or 'columns'}, default 0\n\n        Returns\n        -------\n        DataFrame\n\n        Raises\n        ------\n        TypeError\n            If the index is not  a :class:`DatetimeIndex`\n\n        See Also\n        --------\n        between_time : Select values between particular times of the day.\n        DatetimeIndex.indexer_at_time : Get just the index locations for\n            values at particular time of the day.\n\n        Examples\n        --------\n        >>> idx = pd.date_range('2018-04-09', periods=4, freq='12H')\n        >>> psdf = ps.DataFrame({'A': [1, 2, 3, 4]}, index=idx)\n        >>> psdf\n                             A\n        2018-04-09 00:00:00  1\n        2018-04-09 12:00:00  2\n        2018-04-10 00:00:00  3\n        2018-04-10 12:00:00  4\n\n        >>> psdf.at_time('12:00')\n                             A\n        2018-04-09 12:00:00  2\n        2018-04-10 12:00:00  4\n        "
    if asof:
        raise NotImplementedError("'asof' argument is not supported")
    axis = validate_axis(axis)
    if (axis != 0):
        raise NotImplementedError('at_time currently only works for axis=0')
    if (not isinstance(self.index, ps.DatetimeIndex)):
        raise TypeError('Index must be DatetimeIndex')
    psdf = self.copy()
    psdf.index.name = verify_temp_column_name(psdf, '__index_name__')
    return_types = ([psdf.index.dtype] + list(psdf.dtypes))

    def pandas_at_time(pdf) -> ps.DataFrame[return_types]:
        return pdf.at_time(time, asof, axis).reset_index()
    with option_context('compute.default_index_type', 'distributed'):
        psdf = psdf.pandas_on_spark.apply_batch(pandas_at_time)
    return DataFrame(self._internal.copy(spark_frame=psdf._internal.spark_frame, index_spark_columns=psdf._internal.data_spark_columns[:1], index_fields=psdf._internal.data_fields[:1], data_spark_columns=psdf._internal.data_spark_columns[1:], data_fields=psdf._internal.data_fields[1:]))
Select values at particular time of day (example: 9:30AM).

Parameters
----------
time : datetime.time or str
axis : {0 or 'index', 1 or 'columns'}, default 0

Returns
-------
DataFrame

Raises
------
TypeError
    If the index is not  a :class:`DatetimeIndex`

See Also
--------
between_time : Select values between particular times of the day.
DatetimeIndex.indexer_at_time : Get just the index locations for
    values at particular time of the day.

Examples
--------
>>> idx = pd.date_range('2018-04-09', periods=4, freq='12H')
>>> psdf = ps.DataFrame({'A': [1, 2, 3, 4]}, index=idx)
>>> psdf
                     A
2018-04-09 00:00:00  1
2018-04-09 12:00:00  2
2018-04-10 00:00:00  3
2018-04-10 12:00:00  4

>>> psdf.at_time('12:00')
                     A
2018-04-09 12:00:00  2
2018-04-10 12:00:00  4
def at_time(self, time: Union[(datetime.time, str)], asof: bool=False, axis: Axis=0) -> 'DataFrame':
    "\n        Select values at particular time of day (example: 9:30AM).\n\n        Parameters\n        ----------\n        time : datetime.time or str\n        axis : {0 or 'index', 1 or 'columns'}, default 0\n\n        Returns\n        -------\n        DataFrame\n\n        Raises\n        ------\n        TypeError\n            If the index is not  a :class:`DatetimeIndex`\n\n        See Also\n        --------\n        between_time : Select values between particular times of the day.\n        DatetimeIndex.indexer_at_time : Get just the index locations for\n            values at particular time of the day.\n\n        Examples\n        --------\n        >>> idx = pd.date_range('2018-04-09', periods=4, freq='12H')\n        >>> psdf = ps.DataFrame({'A': [1, 2, 3, 4]}, index=idx)\n        >>> psdf\n                             A\n        2018-04-09 00:00:00  1\n        2018-04-09 12:00:00  2\n        2018-04-10 00:00:00  3\n        2018-04-10 12:00:00  4\n\n        >>> psdf.at_time('12:00')\n                             A\n        2018-04-09 12:00:00  2\n        2018-04-10 12:00:00  4\n        "
    if asof:
        raise NotImplementedError("'asof' argument is not supported")
    axis = validate_axis(axis)
    if (axis != 0):
        raise NotImplementedError('at_time currently only works for axis=0')
    if (not isinstance(self.index, ps.DatetimeIndex)):
        raise TypeError('Index must be DatetimeIndex')
    psdf = self.copy()
    psdf.index.name = verify_temp_column_name(psdf, '__index_name__')
    return_types = ([psdf.index.dtype] + list(psdf.dtypes))

    def pandas_at_time(pdf) -> ps.DataFrame[return_types]:
        return pdf.at_time(time, asof, axis).reset_index()
    with option_context('compute.default_index_type', 'distributed'):
        psdf = psdf.pandas_on_spark.apply_batch(pandas_at_time)
    return DataFrame(self._internal.copy(spark_frame=psdf._internal.spark_frame, index_spark_columns=psdf._internal.data_spark_columns[:1], index_fields=psdf._internal.data_fields[:1], data_spark_columns=psdf._internal.data_spark_columns[1:], data_fields=psdf._internal.data_fields[1:]))