我有以下数据集:
Name Year Date Value
x year1 date1 v1
x year1 date2 v2
x year1 date3 v3
x year2 date1 v4
x year2 date2 v5
x year2 date3 v6
z year1 date1 v7
z year1 date2 v8
z year1 date3 v9
z year2 date1 v10
z year2 date2 v11
z year2 date3 v12
y year1 date1 v13
y year1 date2 v14
y year1 date3 v15
y year2 date1 v16
y year2 date2 v17
y year2 date3 v18
我想要以下数据集输出:
Name Year Date Value
x year1 date1 v1
x year2 date1 v4
x year1 date2 v2
x year2 date2 v5
x year1 date3 v3
x year2 date3 v6
z year1 date1 v7
z year2 date1 v10
z year1 date2 v8
z year2 date2 v11
z year1 date3 v9
z year2 date3 v12
y year1 date1 v13
y year2 date1 v16
y year1 date2 v14
y year2 date2 v17
y year1 date3 v15
y year2 date3 v18
我尝试了以下代码,但我的"Name"列也在排序x,y,z。我想要"名称"列以保持x, z, y:df.sort_values(['Name', 'Date'])
根据我的理解,您希望数据首先由Name
排序,然后由Date
排序。
,你可以试试:
df.sort_values(by = ['Name', 'Date'], ascending = [True, True])
使用说明:
df.sort_values(['Name', 'Date'])
输出:
Name Year Date Value
0 x year1 date1 v1
3 x year2 date1 v4
1 x year1 date2 v2
4 x year2 date2 v5
2 x year1 date3 v3
5 x year2 date3 v6
6 y year1 date1 v7
9 y year2 date1 v10
7 y year1 date2 v8
10 y year2 date2 v11
8 y year1 date3 v9
11 y year2 date3 v12