gpt4 book ai didi

python - 在 apply 函数 pandas python 中包含组名

转载 作者:太空狗 更新时间:2023-10-29 17:27:22 25 4
gpt4 key购买 nike

是否可以指定 groupby() 调用在 apply() lambda 函数中使用组名?

类似于如果我遍历组,我可以通过以下元组分解获得组键:

for group_name, subdf in temp_dataframe.groupby(level=0, axis=0):
print group_name

...有没有办法在应用函数中也获取组名,例如:

temp_dataframe.groupby(level=0,axis=0).apply(lambda group_name, subdf: foo(group_name, subdf)

如何获取组名作为 apply lambda 函数的参数?

最佳答案

我认为你应该能够使用name属性:

temp_dataframe.groupby(level=0,axis=0).apply(lambda x: foo(x.name, x))

应该可以,例如:

In [132]:
df = pd.DataFrame({'a':list('aabccc'), 'b':np.arange(6)})
df

Out[132]:
a b
0 a 0
1 a 1
2 b 2
3 c 3
4 c 4
5 c 5

In [134]:
df.groupby('a').apply(lambda x: print('name:', x.name, '\nsubdf:',x))

name: a
subdf: a b
0 a 0
1 a 1
name: b
subdf: a b
2 b 2
name: c
subdf: a b
3 c 3
4 c 4
5 c 5
Out[134]:
Empty DataFrame
Columns: []
Index: []

关于python - 在 apply 函数 pandas python 中包含组名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32460593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com