【发布时间】:2017-05-16 23:16:49
【问题描述】:
我通过导入 csv 文件制作了一个数据框。并将日期列转换为日期时间并使其成为索引。但是,在对索引进行排序时,它不会产生我想要的结果
print(df.head())
df['Date'] = pd.to_datetime(df['Date'])
df.index = df['Date']
del df['Date']
df.sort_index()
print(df.head())
结果如下:
Date Last
0 2016-12-30 1.05550
1 2016-12-29 1.05275
2 2016-12-28 1.04610
3 2016-12-27 1.05015
4 2016-12-23 1.05005
Last
Date
2016-12-30 1.05550
2016-12-29 1.05275
2016-12-28 1.04610
2016-12-27 1.05015
2016-12-23 1.05005
日期实际上可以追溯到 1999 年,所以如果我按日期排序,它应该按升序显示数据吧?
【问题讨论】:
-
执行
df.sort_index(inplace=True)或df = df.sort_index() -
最好使用
df.set_index('Date', drop=True)来更改索引。
标签: python sorting datetime pandas