dateframe如何重排列_python-重新排列pandasDataFrame的
列,以。。。
我有这个DataFrame:
df = pd.DataFrame({'c1':[1,2,3,4]
,'c2':[2,4,5,6]
,'c3':[5,7,9,10]
,'c4':[-1,3,1,0]
,'c5':[100,1000,1,2]})
df
c1 c2 c3 c4 c5
0 1 2 5 -1 100
1 2 4 7 3 1000
2 3 5 9 1 1
3 4 6 10 0 2
我不知道该怎么办,就是快速对列进⾏排序,以便总c5最⾼的列排在最前⾯,然后是c3,c2,c1和c4:
c1 c2 c3 c4 c5
sort命令排序0 1 2 5 -1 100
1 2 4 7 3 1000
2 3 5 9 1 1
3 4 6 10 0 2
那么,是否有⼀条命令可以产⽣以下结果(⽆需对列名进⾏硬编码)?
df[['c5', 'c3', 'c2', 'c1' , 'c4']]
c5 c3 c2 c1 c4
0 100 5 2 1 -1
1 1000 7 4
2 3
2 1 9 5
3 1
3 2 10 6
4 0
解决⽅法:
道歉的琐碎问题-⽐我想的要容易:
df[df.sum().sort_values(ascending = False).index]
标签:pandas,python
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论