简体   繁体   English

按多列取消分组的熊猫数据框

[英]ungrouping a grouped pandas dataframe by multiple columns

I have a pandas_dataframe like this.我有一个这样的pandas_dataframe

df=pd.DataFrame({'name':['A','A','B','C','B','B','C','C','C','A'],'ids':['M_1','M_1','K_1','K_1','K_1','K_1','G_1','G_1','G_1','K_1'],
            'no' :[1,2,1,2,3,1,2,3,4,1],'colors':['Red','black','green','blue','yellow','white','rose','pink','maroon','lightblue']})
          

The data frame after sorted by name and ids looks like this.nameids排序后的数据框如下所示。

排序的数据框 After grouping by name and ids, it looks like this.按名称和ID分组后,它看起来像这样。 分组操作后的数据框 I want the final data frame with a new column and ungrouped.我想要带有新列且未分组的最终数据框。 预期数据框 I am new to this forum and yet to learn how to paste the outputs obtained from jupyter notebook.我是这个论坛的新手,还没有学习如何粘贴从 jupyter notebook 获得的输出。

Try with transform尝试transform

df['max_no'] = df.groupby(['name','ids'])['no'].transform('max')
df
Out[147]: 
  name  ids  no     colors  max_no
0    A  M_1   1        Red       2
1    A  M_1   2      black       2
2    B  K_1   1      green       3
3    C  K_1   2       blue       2
4    B  K_1   3     yellow       3
5    B  K_1   1      white       3
6    C  G_1   2       rose       4
7    C  G_1   3       pink       4
8    C  G_1   4     maroon       4
9    A  K_1   1  lightblue       1

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM