如何在行而不是列上对数据框进行排序?

时间:2016-05-10 23:54:35

标签: python pandas

我有一个数据框

    Albania Andorra Armenia Austria Azerbaijan
2014    98.0    96.0    97.0    96.0    98.0
2013    99.0    95.0    97.0    96.0    98.0
2012    98.0    98.0    97.0    95.5    97.0
2011    99.0    99.0    97.0    96.0    98.0
2010    99.0    99.0    97.0    96.0    98.0

我想对2014行上的列进行排序。因此产生的排序应该是阿尔巴尼亚,阿塞拜疆,亚美尼亚,奥地利安道尔的列。

我打赌我可以使用df.values然后对生成的ndarray进行排序,但df.sort_values可以这样做吗?我尝试了df.sort_values('2014',axis = 1),但收到了错误KeyError: '2014'

最接近我可以不使用数组f[f.ix['2014'].sort_values(ascending = False).index]

1 个答案:

答案 0 :(得分:1)

解决方案

转置然后排序

df.T.sort_values(2014).T