Spec-Zone.ru › pandas 0.21

pandas.DataFrame.sort_values

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

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

Новая в версии 0.17.0.

Параметры:

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

Имя или список имён, которые ссылаются на элементы оси.

axis : {0 или ‘индекс’, 1 или ‘колонки’}, по умолчанию 0

Ось, по которой происходит сортировка

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

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

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

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

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

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

na_position : {‘первый’, ‘последний’}, по умолчанию ‘последний’

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.21.1/generated/pandas.DataFrame.sort_values.html

Spec-Zone.ru

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