考虑以下非常简单的pandas数据集:
df = pd.DataFrame({'A': [pd.datetime(2015,02,02)]})
df
Out[53]:
A
0 2015-02-02
此处,时间变量A
的格式为datetime64
:
df.dtypes
Out[54]:
A datetime64[ns]
dtype: object
现在,我将此数据框保存为csv,并使用read_csv()
选项加载parse_dates
。
df.to_csv('P:test.csv')
df2=pd.read_csv('P:test.csv',parse_dates='A')
df2.dtypes
Out[59]:
Unnamed: 0 int64
A object
dtype: object
解析器无法识别日期,因此我需要再次手动运行to_datetime
(这是一段时间)......
应该有办法让Pandas正确解析Pandas 本身生成的日期,对吗?这有什么不对?
谢谢!
答案 0 :(得分:4)
您需要指定列名列表:
parse_dates=['A']
示例:
>>> pd.read_csv('date.csv', parse_dates=['A']).dtypes
Unnamed: 0 int64
A datetime64[ns]
dtype: object
dtypes: datetime64[ns](1), int64(1)
memory usage: 24.0 bytes