maxframe.dataframe.DataFrame.nlargest#
- DataFrame.nlargest(n, columns, keep='first')#
返回按 columns 降序排列的前 n 行。
返回 columns 中具有最大值的前 n 行,按降序排列。未指定的列也会返回,但不用于排序。
此方法等效于
df.sort_values(columns, ascending=False).head(n),但性能更优。- 参数:
- 返回:
按给定列降序排列的前 n 行。
- 返回类型:
参见
DataFrame.nsmallest返回按 columns 升序排列的前 n 行。
DataFrame.sort_values按值对 DataFrame 进行排序。
DataFrame.head返回前 n 行,不重新排序。
备注
此函数不能用于所有列类型。例如,当指定具有 object 或 category 数据类型的列时,会引发
TypeError。示例
>>> import maxframe.dataframe as md >>> df = md.DataFrame({'population': [59000000, 65000000, 434000, ... 434000, 434000, 337000, 11300, ... 11300, 11300], ... 'GDP': [1937894, 2583560 , 12011, 4520, 12128, ... 17036, 182, 38, 311], ... 'alpha-2': ["IT", "FR", "MT", "MV", "BN", ... "IS", "NR", "TV", "AI"]}, ... index=["Italy", "France", "Malta", ... "Maldives", "Brunei", "Iceland", ... "Nauru", "Tuvalu", "Anguilla"]) >>> df.execute() population GDP alpha-2 Italy 59000000 1937894 IT France 65000000 2583560 FR Malta 434000 12011 MT Maldives 434000 4520 MV Brunei 434000 12128 BN Iceland 337000 17036 IS Nauru 11300 182 NR Tuvalu 11300 38 TV Anguilla 11300 311 AI
在以下示例中,我们将使用
nlargest选择在 "population" 列中具有最大值的三行。>>> df.nlargest(3, 'population').execute() population GDP alpha-2 France 65000000 2583560 FR Italy 59000000 1937894 IT Malta 434000 12011 MT
当使用
keep='last'时,重复项按相反顺序处理:>>> df.nlargest(3, 'population', keep='last').execute() population GDP alpha-2 France 65000000 2583560 FR Italy 59000000 1937894 IT Brunei 434000 12128 BN
当使用
keep='all'时,所有重复项都会保留:>>> df.nlargest(3, 'population', keep='all').execute() population GDP alpha-2 France 65000000 2583560 FR Italy 59000000 1937894 IT Malta 434000 12011 MT Maldives 434000 4520 MV Brunei 434000 12128 BN
要按列 "population" 和 "GDP" 中的最大值进行排序,我们可以在下一个示例中指定多个列。
>>> df.nlargest(3, ['population', 'GDP']).execute() population GDP alpha-2 France 65000000 2583560 FR Italy 59000000 1937894 IT Brunei 434000 12128 BN