python - 如何按行而不是列对数据框进行排序?

标签 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 行中的列进行排序。因此,生成的排序应包含 Albania、Azerbajain、Armenia、Andorra、Austria 等列。

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

不使用数组我能得到的最接近的是 f[f.ix['2014'].sort_values(ascending = False).index]

最佳答案

解决方案

先转置再排序

df.T.sort_values(2014).T

关于python - 如何按行而不是列对数据框进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37150823/

相关文章:

python-3.x - Pandas 插值给出奇怪的结果

python - 如何使用变量将数据帧传递给函数?

python - 无法通过 python 记录器打印预期响应

python - 有没有办法在openpyxl中获取工作簿的名称

python - 如何使用 Pyramid 和烧杯的 cookie session 来正确存储 session_id?

python - 实现装饰器来限制 setter

python - 使用乘法 ( * ) 意外行为生成子列表

python - 如何运行仅在 Pandas 中选择第一次出现的条件查询?

python - 从 pandas Timestamp 获取 MM-DD-YYYY

python - 数据框中的条件替换