Python datetime.datetime()的时间戳

Python datetime.datetime()的时间戳,python,pandas,datetime,Python,Pandas,Datetime,我有一个带有时间戳列的数据帧。我想将其转换为datetime.datetime格式。这就是我尝试过的: import pandas as pd ts = pd.Timestamp('2019-01-01 00:00:00', tz=None) df = pd.DataFrame({"myDate": [ts]}) df["myDate"] = df["myDate"].dt.to_pydatetime() myList = df["myDate"].dt.to_pydatetime() p

我有一个带有时间戳列的数据帧。我想将其转换为datetime.datetime格式。这就是我尝试过的:

import pandas as pd

ts = pd.Timestamp('2019-01-01 00:00:00', tz=None)
df = pd.DataFrame({"myDate": [ts]})

df["myDate"] = df["myDate"].dt.to_pydatetime()
myList = df["myDate"].dt.to_pydatetime()

print(df.dtypes)
print(type(myList[0]))
第一个print()返回时间戳(意外) 第二个print()返回datetime(预期值) 如何使此数据帧重新分配保持不变

*编辑:我正在努力实现的目标* 将数据帧中的时间戳与列表中的日期时间进行比较,如下所示:

ts = pd.Timestamp('2019-01-01 00:00:00', tz=None)
df = pd.DataFrame({"my_date": [ts]})
df_set = set(df["my_date"].values)
dt_set = set([datetime(2019, 1, 1, 0, 0, 0)])
print(dt_set - df_set)
返回:{datetime.datetime(2019,1,1,0,0)}。应为空集。

您可以使用及其方法。通常,对Pandas/NumPy对象使用
set
,效率低下。相关:


我不明白你的意思……我需要将我的数据帧的日期时间索引与我代码中其他地方的日期列表进行比较。对此,你不需要
到\u pydatetime()
。我建议您更新您的问题,以解释您试图实现的总体目标。谢谢。现在,to_pydatetime()处理这个结果。你知道为什么我不能把这个分配给我的数据帧吗。i、 e:df[“myDate”]=df[“myDate”].dt.to_pydatetime()@GlaceCelery,我没有研究熊猫的内部结构,但提出了基本原理
pd.Timestamp
提供了
datetime.datetime
功能的超集,而且由于在后台使用了NumPy
int64
数组,因此效率更高。
from datetime import datetime

df = pd.DataFrame({"my_date": [pd.Timestamp('2019-01-01 00:00:00', tz=None),
                               pd.Timestamp('2019-01-10 00:00:00', tz=None)]})

datetime_list = [datetime(2019, 1, 1, 0, 0, 0)]

diff = pd.DatetimeIndex(df['my_date']).difference(pd.DatetimeIndex(datetime_list))

# DatetimeIndex(['2019-01-10'], dtype='datetime64[ns]', freq=None)