2017-11-30 6 views
0

에 대한 DF이다 :정렬 팬더 multiindex마다 그룹 여기

    'A'   'B 
Gain/Expsr% -10.0 2.104000 1.194000 
      -2.0 1.389000 0.892000 

Gain/MaxDD -10.0 0.024000 0.064000 
      -2.0 0.020000 0.058000 

그리고 예상 출력은 다음과 같습니다

df.sortlevel(axis=1,level=[1,0],sort_remaining=True) 
df.sort_index(axis=1,level=1,sort_remaining=True) 

뭔가 :

    'A'   'B 
Gain/Expsr% -2.0 1.389000 0.892000 
      -10.0 2.104000 1.194000 

Gain/MaxDD -2.0 0.020000 0.058000 
      -10.0 0.024000 0.064000 

나는 작은 성공을 시도했습니다 라인을 따라 :

(210)
+0

방법이 dataframe을 정렬 할 수 있습니까? 예상되는 두 그룹 출력이 다르게 정렬됩니까? –

+0

예, 레벨 0을 변경하고 싶지는 않지만 레벨 1 그룹 (레벨 0 그룹 내)의 모든 레벨 1이 반전됩니다. –

+0

예상 결과가 표시되지 않습니다. Exp가 내림차순이고 MaxDD가 오름차순입니다. –

답변

1

은의이 목록으로 ascending 함께 해보자 :

df.sort_index(level=[0,1], ascending=[True,True]) 

         A  B 
Gain/Expsr% -10.0 2.104 1.194 
      -2.0 1.389 0.892 
Gain/MaxDD -10.0 0.024 0.064 
      -2.0 0.020 0.058 

df.sort_index(level=[0,1], ascending=[True, False]) 

         A  B 
Gain/Expsr% -2.0 1.389 0.892 
      -10.0 2.104 1.194 
Gain/MaxDD -2.0 0.020 0.058 
      -10.0 0.024 0.064 
+0

두 번째 작품은 작동하지 않습니다. –

+0

감사합니다. 당신이 목록으로 오름차순으로 전달할 수 있다는 것을 알지 못했지만, 완전히 이해할 수 있어야합니다. –

+0

예, 나는 다른 종류의 것을 보여 주려고했다. :) –