初始数据:

import pandas as pd
import numpy as np

data = {
    'brand':['Python', 'C', 'C++', 'C#', 'Java'],
    'B':[4,6,8,12,10],
    'A':[10,2,5,20,16],
    'D':[6,18,14,6,12],
    'years':[4,1,1,30,30],
    'C':[8,12,18,8,2]
}
df = pd.DataFrame(data=data)
print("df数据:\n", df, '\n')

out:

df数据:
     A   B   C   D   brand  years
0  10   4   8   6  Python      4
1   2   6  12  18       C      1
2   5   8  18  14     C++      1
3  20  12   8   6      C#     30
4  16  10   2  12    Java     30

第一种:按列的名称手动排序:

print("按列名排序:\n", df[['brand', 'A', 'B', 'C', 'D', 'years']], '\n')

out:

按列名排序:
     brand   A   B   C   D  years
0  Python  10   4   8   6      4
1       C   2   6  12  18      1
2     C++   5   8  18  14      1
3      C#  20  12   8   6     30
4    Java  16  10   2  12     30

第二种方法,使用.iloc方法,通过列的位置来排序:

print("按列名排序:\n", df.iloc[:,[0,2,1,5,3,4]], '\n')

out:

按列名排序:
     A   C   B  years   D   brand
0  10   8   4      4   6  Python
1   2  12   6      1  18       C
2   5  18   8      1  14     C++
3  20   8  12     30   6      C#
4  16   2  10     30  12    Java

第三种方法,使用.loc方法,通过列的名称来进行排序:

print("按列名排序:\n", df.loc[:,['brand', 'A', 'B', 'C', 'D', 'years']], '\n')

out:

按列名排序:
     brand   A   B   C   D  years
0  Python  10   4   8   6      4
1       C   2   6  12  18      1
2     C++   5   8  18  14      1
3      C#  20  12   8   6     30
4    Java  16  10   2  12     30

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐