小编Bil*_*ros的帖子

如何在 Pandas Dataframe 中的 groupby 之后使用分配函数

我很好奇我们是否能够在 Python 中的 groupby 之后使用分配函数。我不想通过保存分组数据然后使用分配来做到这一点。

假设我们有:

import pandas as pd

data=pd.DataFrame({'Group':['A','A','A','B','B','B'],'One':[1,12,4,5,4,3],'Two':[5,3,4,5,2,7,]})

  Group  One  Two
0     A    1    5
1     A   12    3
2     A    4    4
3     B    5    5
4     B    4    2
5     B    3    7
Run Code Online (Sandbox Code Playgroud)

以下代码不起作用,因为分配函数内部使用的数据不是分组数据:

data.groupby('Group').sum().assign(one_two=data['One']/data['Two'])
Run Code Online (Sandbox Code Playgroud)

预期输出:

       One  Two  one_two
Group                   
A       17   12      1.416
B       12   14      0.857
Run Code Online (Sandbox Code Playgroud)

同样,我不想将分组数据分配给新数据框,然后使用分配。我想在同一行代码中执行此操作。

python grouping assign pandas

4
推荐指数
2
解决办法
3450
查看次数

标签 统计

assign ×1

grouping ×1

pandas ×1

python ×1