pandas.Series.nsmallest — pandas 0.24.2 documentation (original) (raw)

Series. nsmallest(n=5, keep='first')[source]

Return the smallest n elements.

Parameters: n : int, default 5 Return this many ascending sorted values. keep : {‘first’, ‘last’, ‘all’}, default ‘first’ When there are duplicate values that cannot all fit in a Series of n elements: first : take the first occurrences based on the index order last : take the last occurrences based on the index order all : keep all occurrences. This can result in a Series of size larger than n.
Returns: Series The n smallest values in the Series, sorted in increasing order.

Notes

Faster than .sort_values().head(n) for small n relative to the size of the Series object.

Examples

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

The n largest elements where n=5 by default.

s.nsmallest() Monserat 5200 Nauru 11300 Tuvalu 11300 Anguilla 11300 Iceland 337000 dtype: int64

The n smallest elements where n=3. Default keep value is ‘first’ so Nauru and Tuvalu will be kept.

s.nsmallest(3) Monserat 5200 Nauru 11300 Tuvalu 11300 dtype: int64

The n smallest elements where n=3 and keeping the last duplicates. Anguilla and Tuvalu will be kept since they are the last with value 11300 based on the index order.

s.nsmallest(3, keep='last') Monserat 5200 Anguilla 11300 Tuvalu 11300 dtype: int64

The n smallest elements where n=3 with all duplicates kept. Note that the returned Series has four elements due to the three duplicates.

s.nsmallest(3, keep='all') Monserat 5200 Nauru 11300 Tuvalu 11300 Anguilla 11300 dtype: int64