Python - 使用 Numpy 在 Pandas 聚合中计算不同值

pythonserver side programmingprogramming更新于 2025/11/1 2:20:17

要计算不同值,请在 Pandas 中使用 nunique。我们将按列分组,并使用 Numpy sum() 查找 sun。

首先,导入所需的库 −

import pandas as pd
import numpy as np

创建一个包含 3 列的 DataFrame。列中有重复值 −

dataFrame = pd.DataFrame(
   {
      &"Car": ['BMW', 'Audi', 'BMW', 'Lexus', 'Lexus'],"Place": ['Delhi','Bangalore','Delhi','Chandigarh','Chandigarh'],"Units": [100, 150, 50, 110, 90]
}
)

使用 nunique 在聚合 agg() 中对不同项进行计数。计算计数的总和,我们使用 numpy sum() −

dataFrame = dataFrame.groupby("Car").agg({"Units": np.sum, "Place": pd.Series.nunique})

示例

以下是代码 −

import pandas as pd
import numpy as np

dataFrame = pd.DataFrame(
   {
      "Car": ['BMW', 'Audi', 'BMW', 'Lexus', 'Lexus'],"Place": ['Delhi','Bangalore','Delhi','Chandigarh','Chandigarh'],"Units": [100, 150, 50, 110, 90]
   }
)

print"DataFrame ...\n",dataFrame

# 使用 nunique 进行聚合计数
dataFrame = dataFrame.groupby("Car").agg({"Units": np.sum, "Place": pd.Series.nunique})

print"\nUpdated DataFrame ...\n",dataFrame

输出

这将产生以下输出 −

DataFrame ...
     Car      Place   Units
0    BMW      Delhi    100
1   Audi  Bangalore    150
2    BMW      Delhi     50
3  Lexus Chandigarh    110
4  Lexus Chandigarh     90

Updated DataFrame ...
       Units   Place
Car
Audi    150       1
BMW     150       1
Lexus   200       1

相关文章


有用资源