我正在制作一个可以处理任何 csv 文件的通用工具。我有一个看起来像这样的 csv 文件。第一行是列名,第二行是变量类型。
Time,M1,M2,M3,CityName
temp,num,num,num,city
20-May-15,19,20,0,aligarh
03-Sep-14,25,42,7,agra
20-Jan-13,23,35,4,aligarh
20-Feb-15,21,32,3,allahabad
12-May-16,17,27,1,aligarh
25-May-16,16,40,5,aligarh
我想在 Python 中根据日期(从旧到新)对整个文件进行排序,但找不到出路。
最佳答案
我认为 pandas
应该有所帮助 - 首先通过 header=[0,1]
和第一列将第一个和第二个 csv header 转换为 MultiIndex
解析为日期时间,最后 sort_values
:
df = pd.read_csv(file, header=[0,1], parse_dates=[0])
df = df.sort_values(('Time','temp'))
#sort by first column
#df = df.sort_values(df.columns[0])
print (df)
Time M1 M2 M3 CityName
temp num num num city
2 2013-01-20 23 35 4 aligarh
1 2014-09-03 25 42 7 agra
3 2015-02-20 21 32 3 allahabad
0 2015-05-20 19 20 0 aligarh
4 2016-05-12 17 27 1 aligarh
5 2016-05-25 16 40 5 aligarh
关于python - 根据日期对 CSV 文件进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49462179/