我有一个Dataframe,其时间戳列的类型为'datetime64 [ns]'。当我尝试将其插入Salesforce平台时出现错误' TypeError:类型为'Timestamp'的对象不是JSON可序列化的'。如何更改此时间戳列以使其正确更新。下面给出的是Dataframe的视图。
Id,Name,Date,Type
1,ProdA,2018-05-18 04:45:08,S
1,ProdB,2018-05-18 02:15:00,S
1,ProdC,2018-05-16 10:20:00,S
这4列中每一列的数据类型:
Id object
Name object
Date datetime64[ns]
Type object
dtype: object
任何人都可以为此提供帮助。感谢。
答案 0 :(得分:8)
您可以尝试将datetime转换为字符串:
df['Date'] = df['Date'].astype(str)
或者:
df['Date'] = df['Date'].dt.strftime('%Y-%m-%d %H:%M:%S')
print (df.dtypes)
Id object
Name object
Date object
Type object
dtype: object
答案 1 :(得分:0)
如果遇到错误TimeStamp has no attribute as "astype(str)"
,则可以尝试使用str(timeseries.index[0])
。这会将时间戳转换为可以序列化的字符串。