gpt4 book ai didi

python - 重新排列 pandas DataFrame 的列,使总计最高的列排在第一位

转载 作者:行者123 更新时间:2023-11-28 16:24:07 25 4
gpt4 key购买 nike

我有这个数据框:

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
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]

关于python - 重新排列 pandas DataFrame 的列,使总计最高的列排在第一位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37977929/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com