Python 如何根据值对dataframe中的行的列进行排序?
我有一个数据帧: 我想在Python 如何根据值对dataframe中的行的列进行排序?,python,pandas,Python,Pandas,我有一个数据帧: 我想在2015/11/30上对值进行排序。 我希望排序后的数据帧如下所示: 如何做到这一点?经过许多评论和问题,您似乎想打电话: 可以使用索引值为列编制索引: In [32]: df[df.iloc[-1].sort_values(ascending=False).index] Out[32]: 3 4 0 1 2 0 0.554305 1.386065 0.489902 -0.28
2015/11/30
上对值进行排序。
我希望排序后的数据帧如下所示:
如何做到这一点?经过许多评论和问题,您似乎想打电话: 可以使用索引值为列编制索引:
In [32]:
df[df.iloc[-1].sort_values(ascending=False).index]
Out[32]:
3 4 0 1 2
0 0.554305 1.386065 0.489902 -0.283736 0.145133
1 1.421608 -1.123981 -0.019177 0.166250 -0.610949
2 0.558777 -0.021781 -0.613483 -0.629143 -0.877431
您可以在下面对rowike列进行排序
df
Out[98]:
open high low
date
2015/11/26 9861.48 8484.9 4656.74
2015/11/27 9841.48 8384.9 4256.74
df.loc['2015/11/26'].order(ascending=False)
Out[99]:
open 9861.48
high 8484.90
low 4656.74
Name: 2015/11/26, dtype: float64
df.loc['2015/11/26'].order(ascending=True)
Out[100]:
low 4656.74
high 8484.90
open 9861.48
Name: 2015/11/26, dtype: float64
对不起,你什么意思?您的意思是按索引升序还是降序排序?是索引为ts的数据帧?升序。谢谢。这是一个相当糟糕的问题,快速搜索会显示,请检查第一个如果你自己阅读了这个问题,考虑到没有输入数据,没有创建df的代码,没有解释所需的输出应该是什么,并且一个语句不能工作,你能理解这个问题吗?然后请阅读并发布必要的数据,以帮助他人帮助您
df
Out[98]:
open high low
date
2015/11/26 9861.48 8484.9 4656.74
2015/11/27 9841.48 8384.9 4256.74
df.loc['2015/11/26'].order(ascending=False)
Out[99]:
open 9861.48
high 8484.90
low 4656.74
Name: 2015/11/26, dtype: float64
df.loc['2015/11/26'].order(ascending=True)
Out[100]:
low 4656.74
high 8484.90
open 9861.48
Name: 2015/11/26, dtype: float64