首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pandas设置pandas groupby on groupby

pandas设置pandas groupby on groupby
EN

Stack Overflow用户
提问于 2015-06-03 20:48:47
回答 1查看 1.5K关注 0票数 2

虽然我通常理解警告,很多帖子都处理这个问题,但我不明白为什么只有当我到达groupby行(最后一行)时才会收到警告:

代码语言:javascript
复制
grouped = data.groupby(['group'])

for name, group in grouped:
    data2=group.loc[data['B-values'] > 0]
    data2["unique_A-values"]=data2.groupby(["A-values"])["A-values"].transform('count')

编辑:这是我的数据帧(data):

代码语言:javascript
复制
group    A-values    B-values
human    1           -1
human    1            5
human    1            4
human    3            4
human    2           10
bird     7            8
....

对于B值>0 (data2=group.loc[data['B-values'] > 0]):

人类有两个A值等于1,一个等于3,一个等于2 (data2["unique_A-values"]=data2.groupby(["A-values"])["A-values"].transform('count'))

EN

回答 1

Stack Overflow用户

发布于 2015-06-03 22:43:12

之所以会出现这个错误,是因为您引用了groupby,然后尝试向其中添加一个列,所以它只是警告您,如果您打算更新原始df,那么这可能会也可能不会起作用。

如果您只是修改本地副本,那么使用copy()创建一个副本,这样它就会显式显示,警告就会消失:

代码语言:javascript
复制
for name, group in grouped:
    data2=group.loc[data['B-values'] > 0].copy() # <- add .copy() here
    data2["unique_A-values"]=data2.groupby(["A-values"])["A-values"].transform('count')
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30620594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档