📜  daraframe 获取前 n 个最大值 (1)

📅  最后修改于: 2023-12-03 14:40:36.356000             🧑  作者: Mango

以 dataframe 获取前 n 个最大值

数据分析中,获取某一列或多列数据的前 n 个最大值是常见的需求。Pandas 中可以使用 dataframe 来快速获取这些数据。

步骤

首先,我们需要导入 pandas 库,并构建一个简单的 dataframe 示例:

import pandas as pd

df = pd.DataFrame({'a': [1, 2, 3, 4, 5],
                   'b': [6, 7, 8, 9, 10],
                   'c': [11, 12, 13, 14, 15]})

现在,我们可以使用 nlargest() 函数来获取某一列或多列的前 n 个最大值。比如,获取列 'a' 的前 2 个最大值:

df.nlargest(2, 'a')

该函数返回一个新的 dataframe,包含前 n 个最大值所在的行。如果要获取多列的前 n 个最大值,则需将列名以列表形式传入函数。比如,获取列 'a' 和列 'b' 的前 2 个最大值:

df.nlargest(2, ['a', 'b'])
代码示例

下面是完整的代码示例:

import pandas as pd

df = pd.DataFrame({'a': [1, 2, 3, 4, 5],
                   'b': [6, 7, 8, 9, 10],
                   'c': [11, 12, 13, 14, 15]})

# 获取列 'a' 的前 2 个最大值
df.nlargest(2, 'a')

# 获取列 'a' 和列 'b' 的前 2 个最大值
df.nlargest(2, ['a', 'b'])
相关函数

除了 nlargest() 函数,Pandas 中还有 nsmallest() 函数,可以获取某一列或多列的前 n 个最小值。同时,还有head() 函数,可以获取 dataframe 的前 n 行数据。这些函数都可以为数据分析带来方便。