Spec-Zone.ru › pandas 0.23

pandas.DataFrame.sort_values

DataFrame.sort_values(by, axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last') [source]

Сортировка по значениям вдоль оси

Параметры:

by : str или список строк

Имя или список имён для сортировки.

  • если axis равно 0 или ‘index’, то by может содержать уровни индексов и/или метки столбцов
  • если axis равно 1 или ‘columns’, то by может содержать уровни столбцов и/или метки индексов

Изменено в версии 0.23.0: Разрешено указывать имена уровней индексов или столбцов.

axis : {0 или ‘index’, 1 или ‘columns’}, по умолчанию 0

Ось для сортировки

ascending : bool или список bool, по умолчанию True

Сортировка по возрастанию или убыванию. Укажите список для нескольких порядков сортировки. Если это список bool, он должен соответствовать длине by.

inplace : bool, по умолчанию False

если True, выполнить операцию на месте

kind : {‘quicksort’, ‘mergesort’, ‘heapsort’}, по умолчанию ‘quicksort’

Выбор алгоритма сортировки. См. также ndarray.np.sort для получения дополнительной информации. mergesort — единственный стабильный алгоритм. Для DataFrames этот параметр применяется только при сортировке по одному столбцу или метке.

na_position : {‘first’, ‘last’}, по умолчанию ‘last’

first помещает значения NaN в начало, last помещает значения NaN в конец

Возвращает:
sorted_obj : DataFrame

Примеры

>>> df = pd.DataFrame({
...     'col1' : ['A', 'A', 'B', np.nan, 'D', 'C'],
...     'col2' : [2, 1, 9, 8, 7, 4],
...     'col3': [0, 1, 9, 4, 2, 3],
... })
>>> df
    col1 col2 col3
0   A    2    0
1   A    1    1
2   B    9    9
3   NaN  8    4
4   D    7    2
5   C    4    3

Сортировка по столбцу col1

>>> df.sort_values(by=['col1'])
    col1 col2 col3
0   A    2    0
1   A    1    1
2   B    9    9
5   C    4    3
4   D    7    2
3   NaN  8    4

Сортировка по нескольким столбцам

>>> df.sort_values(by=['col1', 'col2'])
    col1 col2 col3
1   A    1    1
0   A    2    0
2   B    9    9
5   C    4    3
4   D    7    2
3   NaN  8    4

Сортировка по убыванию

>>> df.sort_values(by='col1', ascending=False)
    col1 col2 col3
4   D    7    2
5   C    4    3
2   B    9    9
0   A    2    0
1   A    1    1
3   NaN  8    4

Размещение NaN в начале

>>> df.sort_values(by='col1', ascending=False, na_position='first')
    col1 col2 col3
3   NaN  8    4
4   D    7    2
5   C    4    3
2   B    9    9
0   A    2    0
1   A    1    1

© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.23.4/generated/pandas.DataFrame.sort_values.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API