Преобразование между datetime и Pandas Объектами Timestamp
У меня есть следующее:
> date1
Timestamp('2014-01-23 00:00:00', tz=None)
> date2
datetime.date(2014, 3, 26)
и я прочитал в этот ответ, что я мог бы использовать pandas.to_datetime()
для преобразования из Timestamps
в datetime
объектов, но он, похоже, не работает
> pd.to_datetime(date1)
Timestamp('2014-01-23 00:00:00', tz=None)
Почему? Как я могу конвертировать между этими двумя форматами?
Ответы
Ответ 1
Вы можете использовать метод to_pydatetime для более явного:
In [11]: ts = pd.Timestamp('2014-01-23 00:00:00', tz=None)
In [12]: ts.to_pydatetime()
Out[12]: datetime.datetime(2014, 1, 23, 0, 0)
Он также доступен в DatetimeIndex:
In [13]: rng = pd.date_range('1/10/2011', periods=3, freq='D')
In [14]: rng.to_pydatetime()
Out[14]:
array([datetime.datetime(2011, 1, 10, 0, 0),
datetime.datetime(2011, 1, 11, 0, 0),
datetime.datetime(2011, 1, 12, 0, 0)], dtype=object)
Ответ 2
>>> pd.Timestamp('2014-01-23 00:00:00', tz=None).to_datetime()
datetime.datetime(2014, 1, 23, 0, 0)
>>> pd.Timestamp(datetime.date(2014, 3, 26))
Timestamp('2014-03-26 00:00:00')