Подтвердить что ты не робот

Python, сортировка по убыванию данных с pandas

Я пытаюсь сортировать dataframe по убыванию. Я помещаю "False" в восходящий аргумент, но мой порядок все еще возрастает.

Мой код:

from pandas import DataFrame
import pandas as pd

d = {'one':[2,3,1,4,5],
     'two':[5,4,3,2,1],
     'letter':['a','a','b','b','c']}

df = DataFrame(d)

test = df.sort(['one'], ascending=[False])

но выход

  letter  one  two
2      b    1    3
0      a    2    5
1      a    3    4
3      b    4    2
4      c    5    1
4b9b3361

Ответ 1

[False], являющийся непустым списком, не совпадает с False. Вы должны написать:

test = df.sort('one', ascending=False)

Ответ 2

Новый синтаксис (либо):

 test = df.sort_values(['one'], ascending=[False])
 test = df.sort_values(['one'], ascending=[0])

Ответ 3

Для панд 0.17 и выше используйте это:

test = df.sort_values('one', ascending=False)

Поскольку 'one' - это серия во фрейме данных pandas, следовательно, pandas не будет принимать аргументы в форме списка.