Jak sortować ramkę danych pand za pomocą wartości z kilku kolumn?

Mam następującą ramkę danych:

df = pandas.DataFrame([{'c1':3,'c2':10},{'c1':2, 'c2':30},{'c1':1,'c2':20},{'c1':2,'c2':15},{'c1':2,'c2':100}])

Lub w formie czytelnej dla człowieka:

   c1   c2
0   3   10
1   2   30
2   1   20
3   2   15
4   2  100

Następujące polecenie sortowania działa zgodnie z oczekiwaniami:

df.sort(['c1','c2'], ascending=False)

Wydajność:

   c1   c2
0   3   10
4   2  100
1   2   30
3   2   15
2   1   20

Ale następujące polecenie:

df.sort(['c1','c2'], ascending=[False,True])

prowadzi do

   c1   c2
2   1   20
3   2   15
1   2   30
4   2  100
0   3   10

a tego nie oczekuję. Oczekuję, że wartości w pierwszej kolumnie będą uporządkowane od największej do najmniejszej, a jeśli w pierwszej kolumnie są identyczne wartości, uporządkuj według rosnących wartości z drugiej kolumny.

Czy ktoś wie, dlaczego nie działa zgodnie z oczekiwaniami?

DODANY

To jest kopia-wklej:

>>> df.sort(['c1','c2'], ascending=[False,True])
   c1   c2
2   1   20
3   2   15
1   2   30
4   2  100
0   3   10

questionAnswers(7)

yourAnswerToTheQuestion