我正在将 datetime64 的 pandas dataframe 列转换为列表,然后导出到 csv 的单列。
在 CSV 中,我得到的值是
"[Timestamp('2018-05-20 10:20:00'), Timestamp('2018-05-20 10:30:00')]"
如何转换为字符串并导出为 CSV。我想要如下数据:
['2018-05-20 10:20:00', '2018-05-20 10:30:00']
最佳答案
您可以先使用 astype
转换 dtype:
In[29]:
df = pd.DataFrame({'date':pd.to_datetime(['2018-05-20 10:20:00','2018-05-20 10:30:00'])})
df
Out[29]:
date
0 2018-05-20 10:20:00
1 2018-05-20 10:30:00
In[30]:
df['date'].astype(str).tolist()
Out[30]: ['2018-05-20 10:20:00', '2018-05-20 10:30:00']
您所做的只是将数组转换为原始数据类型的列表:
In[31]:
df['date'].tolist()
Out[31]: [Timestamp('2018-05-20 10:20:00'), Timestamp('2018-05-20 10:30:00')]
更正式的方法是调用dt.strftime
使用传入的格式转换为字符串:
In[33]:
df['date'].dt.strftime('%Y-%m-%d %H:%M:%S').tolist()
Out[33]: ['2018-05-20 10:20:00', '2018-05-20 10:30:00']
关于python - Pandas datetime64 到字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50449453/