data = pd.read_csv('data.csv')
print(data)
输出:
code trade_date open high low close volume
0 2GO 2012-06-04 1.750 1.750 1.750 1.750 5000.0
1 2GO 2012-06-05 1.750 1.980 1.750 1.900 8000.0
2 2GO 2012-06-07 1.960 1.960 1.800 1.800 8000.0
3 2GO 2012-06-11 1.900 1.980 1.900 1.980 50000.0
4 2GO 2012-06-13 1.990 1.990 1.900 1.900 19000.0
我想将trade_date设置为index。 。
data.set_index('trade_date', inplace=True)
print(data)
输出:
code open high low close volume
trade_date
2012-06-04 2GO 1.750 1.750 1.750 1.750 5000.0
2012-06-05 2GO 1.750 1.980 1.750 1.900 8000.0
2012-06-07 2GO 1.960 1.960 1.800 1.800 8000.0
2012-06-11 2GO 1.900 1.980 1.900 1.980 50000.0
2012-06-13 2GO 1.990 1.990 1.900 1.900 19000.0
。 。 。然后将其写入csv文件。
data.to_csv('data_reidx.csv')
但是,当我再次读取csv文件时,trade_date又回到了列,并被传统的索引取代了。
data = pd.read_csv('data_reidx.csv')
输出:
trade_date code open high low close volume
0 2012-06-04 2GO 1.750 1.750 1.750 1.750 5000.0
1 2012-06-05 2GO 1.750 1.980 1.750 1.900 8000.0
2 2012-06-07 2GO 1.960 1.960 1.800 1.800 8000.0
3 2012-06-11 2GO 1.900 1.980 1.900 1.980 50000.0
4 2012-06-13 2GO 1.990 1.990 1.900 1.900 19000.0
将数据帧写入csv时如何保留日期时间索引?
答案 0 :(得分:0)
尝试在加载时告诉pandas哪一列是索引:
data = pd.read_csv('data_reidx.csv', index_col='trade_date')
如果您需要更多帮助,这是一个很好的指南,它比我能更好地解释它:https://chrisalbon.com/python/data_wrangling/pandas_dataframe_importing_csv/
答案 1 :(得分:0)
尝试摆脱index_label-
data.to_csv('data_reidx.csv', index_label=False )
下次阅读时,请正常阅读-
data = pd.read_csv('data_reidx.csv')
输出
code open high low close volume
2012-06-04 2GO 1.75 1.75 1.75 1.75 5000.0
2012-06-05 2GO 1.75 1.98 1.75 1.90 8000.0
2012-06-07 2GO 1.96 1.96 1.80 1.80 8000.0
2012-06-11 2GO 1.90 1.98 1.90 1.98 50000.0
2012-06-13 2GO 1.99 1.99 1.90 1.90 19000.0