Python 无法从pandas转换。\u libs.tslibs.timestamps.Timestamp到datetime.datetime

Python 无法从pandas转换。\u libs.tslibs.timestamps.Timestamp到datetime.datetime,python,pandas,datetime,Python,Pandas,Datetime,我正在尝试将从熊猫转换为datetime.DateStamps.timestamps,但更改未保存: 类型(df_unix.loc[45,'lastloginandate']) 输出:pandas.u libs.tslibs.timestaps.Timestamp 键入(df_unix.loc[45,'lastloginandate'].to_pydatetime()) 输出:datetime.datetime df_unix.loc[45,'LastLoginDate']=df_unix.lo

我正在尝试将熊猫转换为datetime.DateStamps.timestamps,但更改未保存

类型(df_unix.loc[45,'lastloginandate'])

输出:pandas.u libs.tslibs.timestaps.Timestamp

键入(df_unix.loc[45,'lastloginandate'].to_pydatetime())

输出:datetime.datetime

df_unix.loc[45,'LastLoginDate']=df_unix.loc[i,'LastLoginDate'].to_pydatetime()

类型(df_unix.loc[45,'lastloginandate'])


假设您有以下日期:

some_date = pd.Timestamp("1970-01-01")
print(some_date)
Output: Timestamp('1970-01-01 00:00:00')
要将其转换为datetime,只需执行以下操作:

some_date.to_pydatetime()
您将获得:

output: datetime.datetime(1970, 1, 1, 0, 0)
不能使用
datetime.datetime(某些日期)
,因为
datetime.datetime
类的构造函数使用3个整数:


一个表示年,一个表示月,一个表示日。

df_unix.loc[45,'lastloginandate']
返回一个标量值。pandas对标量值使用
时间戳
,因此类型正确

运行
df_unix.info()
。您应该看到列类型仍然是
datetime64[ns]


您还使用
45
位置将一个值赋值给_pydatetime
,该值用于返回本机Python datetime对象。如果这改变了整个列的类型,这将是一个有趣的结果。

请输入一个日期示例,或者至少一份回溯时间戳(“1970-01-01 00:00:00”)
output: datetime.datetime(1970, 1, 1, 0, 0)