Skip to main content
`Ctrl`+`K`

# pandas.Series.dt.to_pydatetime

Series.dt.to_pydatetime()

  Return the data as an array of `datetime.datetime` objects.

  Deprecated since version 2.1.0: The current behavior of dt.to_pydatetime is deprecated. In a future version this will return a Series containing python datetime objects instead of a ndarray.

  Timezone information is retained if present.

  Warning

  Python’s datetime uses microsecond resolution, which is lower than pandas (nanosecond). The values are truncated.

  Returns:
    numpy.ndarray

      Object dtype array containing native Python datetime objects.

  See also

  `datetime.datetime`

    Standard library value for a datetime.

  Examples

      >>> s = pd.Series(pd.date_range('20180310', periods=2))
      >>> s
      0   2018-03-10
      1   2018-03-11
      dtype: datetime64[ns]

      >>> s.dt.to_pydatetime()
      array([datetime.datetime(2018, 3, 10, 0, 0),
             datetime.datetime(2018, 3, 11, 0, 0)], dtype=object)

  pandas’ nanosecond precision is truncated to microseconds.

      >>> s = pd.Series(pd.date_range('20180310', periods=2, freq='ns'))
      >>> s
      0   2018-03-10 00:00:00.000000000
      1   2018-03-10 00:00:00.000000001
      dtype: datetime64[ns]

      >>> s.dt.to_pydatetime()
      array([datetime.datetime(2018, 3, 10, 0, 0),
             datetime.datetime(2018, 3, 10, 0, 0)], dtype=object)