我有一个pandas数据帧,其中有一列CreatedDate
id CreatedDate
123 1586362930000
124 1586555550000
所需输出为:
id CreatedDate
123 2020-04-08T15:50:00Z
124 2020-04-08T15:45:00Z
我尝试过以下几种:
# Change the column type from int to datetime64[ns]
df['CreatedDate'] = pd.to_datetime(df['CreatedDate'])
new_df = df['CreatedDate'].dt.strftime("%Y-%m-%d"+"T"+"%H:%M:%S"+"Z")
输出是这样的:
id CreatedDate
123 1970-01-01 00:26:26.362930
124 1970-01-01 00:26:26.365487
这不是我所期望的,我知道那几天应该是4月8日。我只用一个字符串测试了dt.strftime("%Y-%m-%d"+"T"+"%H:%M:%S"+"Z")
,它返回了所需的输出,然而,当我将其应用于数据帧时,它不能正常工作
这是unix时间
pd.to_datetime(df.CreatedDate,unit='ms').dt.strftime("%Y-%m-%d""T""%H:%M:%S""Z")
0 2020-04-08T16:22:10Z
1 2020-04-10T21:52:30Z
Name: CreatedDate, dtype: object