我有以下格式的数据框
country region measure Option1 Option2
A R1 141 max max
A R1 141 max min
A R1 141 max default
A R1 86 min max
A R1 86 min min
A R1 86 min default
A R1 86 default max
A R1 86 default min
A R1 86 default default
A R2 215 max max
A R2 215 max min
A R2 215 max default
A R2 72 min max
A R2 72 min min
A R2 72 min default
A R2 72 default max
A R2 72 default min
A R2 72 default default
A R3 473 max max
A R3 473 max min
A R3 473 max default
A R3 36 min max
A R3 36 min min
A R3 36 min default
A R3 36 default max
A R3 36 default min
A R3 36 default default
使用df.sort(['country','Option1','Option2','region')进行排序后
country region measure Option1 Option2
A R1 86 default default
A R2 72 default default
A R3 36 default default
A R1 86 default max
A R2 72 default max
A R3 36 default max
A R1 86 default min
A R2 72 default min
A R3 36 default min
A R1 141 max default
A R2 215 max default
A R3 473 max default
A R1 141 max max
A R2 215 max max
A R3 473 max max
A R1 141 max min
A R2 215 max min
A R3 473 max min
A R1 86 min default
A R2 72 min default
A R3 36 min default
A R1 86 min max
A R2 72 min max
A R3 36 min max
A R1 86 min min
A R2 72 min min
A R3 36 min min
在这里,我想特别订购以下格式的订单:
country region measure Option1 Option2
A R1 86 min min
A R2 72 min min
A R3 36 min min
A R1 86 min max
A R2 72 min max
A R3 36 min max
A R1 86 min default
A R2 72 min default
A R3 36 min default
A R1 86 default min
A R2 72 default min
A R3 36 default min
A R1 86 default default
A R2 72 default default
A R3 36 default default
A R1 86 default max
A R2 72 default max
A R3 36 default max
A R1 141 max min
A R2 215 max min
A R3 473 max min
A R1 141 max default
A R2 215 max default
A R3 473 max default
A R1 141 max max
A R2 215 max max
A R3 473 max max
任何人都可以帮我一个方法来实现这种自定义的行顺序吗?
答案 0 :(得分:1)
您可以使用sorted Categorical
,但在count = int(input("What number do you want the timer to start: "))
count == ">" -1:
print("count")
print("")
count = count - 1
time.sleep(1)
列中它不同,stil顺序为Option2
,min
和max
:
default
d3['Option1'] = pd.Categorical(d3['Option1'],['min','default','max'], ordered=True)
d3['Option2'] = pd.Categorical(d3['Option2'],['min','max','default'], ordered=True)
d3 = d3.sort_values(['country','Option1', 'Option2' ])
print d3
或者:
country region measure Option1 Option2
4 A R1 86 min min
13 A R2 72 min min
22 A R3 36 min min
3 A R1 86 min max
12 A R2 72 min max
21 A R3 36 min max
5 A R1 86 min default
14 A R2 72 min default
23 A R3 36 min default
7 A R1 86 default min
16 A R2 72 default min
25 A R3 36 default min
6 A R1 86 default max
15 A R2 72 default max
24 A R3 36 default max
8 A R1 86 default default
17 A R2 72 default default
26 A R3 36 default default
1 A R1 141 max min
10 A R2 215 max min
19 A R3 473 max min
0 A R1 141 max max
9 A R2 215 max max
18 A R3 473 max max
2 A R1 141 max default
11 A R2 215 max default
20 A R3 473 max default
31 B R1 79 min min
40 B R2 88 min min
49 B R3 54 min min
30 B R1 384 min max
39 B R2 439 min max
48 B R3 172 min max
32 B R1 79 min default
41 B R2 88 min default
50 B R3 54 min default
34 B R1 79 default min
43 B R2 88 default min
52 B R3 54 default min
33 B R1 384 default max
42 B R2 439 default max
51 B R3 172 default max
35 B R1 79 default default
44 B R2 88 default default
53 B R3 54 default default
28 B R1 79 max min
37 B R2 88 max min
46 B R3 54 max min
27 B R1 384 max max
36 B R2 439 max max
45 B R3 172 max max
29 B R1 79 max default
38 B R2 88 max default
47 B R3 54 max default