Spec-Zone.ru › pandas 0.25

pandas.core.groupby.SeriesGroupBy.nlargest

SeriesGroupBy.nlargest

Возвращает n наибольших элементов.

Параметры:
n : int, default 5

Возвращает столько же значений, отсортированных по убыванию.

keep : {‘first’, ‘last’, ‘all’}, default ‘first’

Если есть дублирующиеся значения, которые не могут поместиться в Series из n элементов:

  • first : return the first n occurrences in order

    в порядке их появления.

  • last : return the last n occurrences in reverse

    в порядке их появления.

  • all : keep all occurrences. This can result in a Series of

    размером больше, чем n.

Возвращает:
Series

n наибольших значений в Series, отсортированных по убыванию.

См. также

Series.nsmallest
Получить n наименьшие элементы.
Series.sort_values
Сортировать Series по значениям.
Series.head
Возвращает первые n строки.

Примечания

Быстрее, чем .sort_values(ascending=False).head(n) для небольших n по отношению к размеру объекта Series.

Примеры

>>> countries_population = {"Italy": 59000000, "France": 65000000,
...                         "Malta": 434000, "Maldives": 434000,
...                         "Brunei": 434000, "Iceland": 337000,
...                         "Nauru": 11300, "Tuvalu": 11300,
...                         "Anguilla": 11300, "Monserat": 5200}
>>> s = pd.Series(countries_population)
>>> s
Italy       59000000
France      65000000
Malta         434000
Maldives      434000
Brunei        434000
Iceland       337000
Nauru          11300
Tuvalu         11300
Anguilla       11300
Monserat        5200
dtype: int64

n наибольших элементов, где n=5 по умолчанию.

>>> s.nlargest()
France      65000000
Italy       59000000
Malta         434000
Maldives      434000
Brunei        434000
dtype: int64

n наибольших элементов, где n=3. Значение по умолчанию для keep равно ‘first’, поэтому Мальта сохраняется.

>>> s.nlargest(3)
France    65000000
Italy     59000000
Malta       434000
dtype: int64

n наибольших элементов, где n=3 и сохраняя последние дубликаты. Бруней сохраняется, так как это последний с значением 434000, исходя из порядка индекса.

>>> s.nlargest(3, keep='last')
France      65000000
Italy       59000000
Brunei        434000
dtype: int64

n наибольших элементов, где n=3 со всеми сохранёнными дубликатами. Обратите внимание, что возвращаемая Series содержит пять элементов из-за трёх дубликатов.

>>> s.nlargest(3, keep='all')
France      65000000
Italy       59000000
Malta         434000
Maldives      434000
Brunei        434000
dtype: int64

© 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.25.0/reference/api/pandas.core.groupby.SeriesGroupBy.nlargest.html

Spec-Zone.ru

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