먼저 COLUMNB 다음 COLUMNA을 기준으로 정렬 할 때문에, 당신은 단지 sort_values
를 사용하여이 작업을 수행 할 수 있습니다
# using jezrael's example
In [11]: data.sort_values(["columnA", "columnB"])
Out[11]:
columnA columnB columnC
4 1 2 8
0 1 7 7
5 2 4 0
1 2 5 8
3 3 1 1
2 3 6 9
In [12]: data.sort_values(["columnA", "columnB"], ascending=[True, False])
Out[12]:
columnA columnB columnC
0 1 7 7
4 1 2 8
1 2 5 8
5 2 4 0
2 3 6 9
3 3 1 1
을
참고 : sort
은 groupby의 (부울) 속성이므로 c가 될 수 없습니다 alled :
In [21]: data.groupby("columnA").sort
Out[21]: True
In [22]: data.groupby("columnA", sort=False).sort
Out[22]: False
In [23]: True()
TypeError: 'bool' object is not callable
당신이 다음과 같은 예를 내부적으로 무엇을 볼 수 있습니다
In [31]: df = pd.DataFrame([["b", 1], ["a", 2]], columns=["A", "B"])
In [32]: df.groupby("A").sum()
Out[32]:
B
A
a 2
b 1
In [33]: df.groupby("A", sort=False).sum()
Out[33]:
B
A
b 1
a 2
참고 :이 동작/순서가 보장되지, 그냥 팬더가 외출하지 않음을 의미는 groupby 키를 주문하는 방법 ... 예. 일부 인덱스 유형의 경우 정렬 할 수 있습니다.
In [34]: df.groupby("B", sort=False).sum()
Out[34]:
A
B
1 b
2 a