Pandas: як відсортувати рядки за абсолютним значенням
Ви можете використовувати наступні методи для сортування рядків pandas DataFrame на основі абсолютного значення стовпця:
Спосіб 1: сортування за абсолютним значенням (спочатку відображається найменше абсолютне значення)
df. reindex (df[' my_column ']. abs (). sort_values (). index )
Спосіб 2: сортування за абсолютним значенням (першим відображається найбільше абсолютне значення)
df. reindex (df[' my_column ']. abs (). sort_values (ascending= False ) .index )
У наведених нижче прикладах показано, як використовувати кожен метод на практиці з наступними pandas DataFrame, який містить інформацію про різних баскетболістів:
import pandas as pd #createDataFrame df = pd. DataFrame ({' player ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' over_under ': [4, -9, 2, 0, 1, 12, -4, -5]}) #view DataFrame print (df) player over_under 0 to 4 1 B -9 2 C 2 3 D 0 4 E 1 5 F 12 6 G -4 7 a.m. -5
Приклад 1: Сортування за абсолютним значенням (спочатку відображається найменше абсолютне значення)
Ми можемо використовувати такий синтаксис, щоб сортувати рядки DataFrame на основі абсолютного значення стовпця over_under :
#sort DataFrame based on absolute value of over_under column
df_sorted = df. reindex (df[' over_under ']. abs (). sort_values (). index )
#view sorted DataFrame
print (df_sorted)
player over_under
3 D 0
4 E 1
2 C 2
0 to 4
6 G -4
7 a.m. -5
1 B -9
5 F 12
Зверніть увагу, що рядки сортуються від найменшого абсолютного значення в стовпці over_under до найбільшого абсолютного значення.
Приклад 2: Сортування за абсолютним значенням (першим відображається найбільше абсолютне значення)
Ми можемо використовувати такий синтаксис, щоб сортувати рядки DataFrame на основі абсолютного значення стовпця over_under :
#sort DataFrame based on absolute value of over_under column
df_sorted = df. reindex (df[' over_under ']. abs (). sort_values (ascending= False ) .index )
#view sorted DataFrame
print (df_sorted)
player over_under
5 F 12
1 B -9
7 a.m. -5
0 to 4
6 G -4
2 C 2
4 E 1
3 D 0
Зверніть увагу, що рядки сортуються від найбільшого абсолютного значення в стовпці over_under до найменшого абсолютного значення.
Примітка . Повну документацію щодо функції sort_values() pandas можна знайти тут .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в pandas:
Панди: як сортувати за датою
Pandas: як сортувати стовпці за назвою
Pandas: як сортувати як за індексом, так і за стовпцем