我有一个这样的数据集:
df = pd.DataFrame({'name': ['Amy', 'Chris', 'Sam'], 'date': [1.597104e+12, 1.600906e+12, np.nan]})
print(df)
name date
0 Amy 1.597104e+12
1 Chris 1.600906e+12
2 Sam NaT
我检查了显示 float64 的日期类型,然后我用来pd.to_datetime
转换它。但我得到的结果是不正确的。
df['date'] = pd.to_datetime(df['date'])
print(df)
name date
0 Amy 1970-01-01 00:26:37.104
1 Chris 1970-01-01 00:26:40.906
2 Sam NaT
我也试过df['date'] = pd.to_timedelta(df['date'], unit='d') + pd.to_datetime('1899-12-30')
了,但下面的结果仍然不正确。
name date
0 Amy 2055-09-23 23:20:48.000057344
1 Chris 1839-08-30 13:23:48.304879616
2 Sam NaT
我真的不知道如何解决这个问题,所以有人可以在这里提供帮助吗?先感谢您!