假设我有一个数据框
import pandas as pd
df = pd.DataFrame({'group':['A','A','B','B','C','C'],'score':[1,2,3,4,5,6]})
首先,我想计算各组的分数之和。我通常是这样的
def group_func(x):
d = {}
d['sum_scores'] = x['score'].sum()
return pd.Series(d)
df.groupby('group').apply(group_func).reset_index()
现在假设我要修改
group_func
但这种修改要求我知道当前输入的组标识
x
.我试过了
x['group']
和
x[group].iloc[0]
在函数的定义范围内,两者都不起作用。
有什么方法可以实现这个功能吗
group_func(x)
了解当前输入的定义坐标
十、
?
在这个玩具示例中,比方说,我只想得到:
pd.DataFrame({'group':['A','B','C'],'sum_scores':[3,7,11],'name_of_group':['A','B','C']})
很明显,最后一列只是重复第一列。我想知道如何使用
group\u func(x)
.如:as
group\u func
处理
十、
对应于组“A”,并生成值3
sum_scores
,如何在的本地范围内提取当前标识“A”
group\u func
?