把分组频数统计的结果添加到原来dataframe中

  统计/机器学习 数据预处理 Python    浏览次数:1727        分享
0

print(data.groupby(by=['ID'], as_index=False).count())

只能产生分组频数统计

----------------------

0 a

1 a

2 b

但是我期望结果是

0 a 2

1 a 2

2 b 1


这种如何解决

 

constant007   2020-02-16 11:50



   1个回答 
1

用transform,然后可以把结果作为新的一列count_ID插入到dataframe里

data['count_ID'] = data.groupby('ID')['ID'].transform('count')


SofaSofa数据科学社区DS面试题库 DS面经

zl_pku   2020-02-16 13:24



  相关讨论

怎么把dataframe的一列转成整数类型

python中怎么把千位分隔符以及货币符号去掉转成数值形式?

怎麼將dataframe 欄位 對應到原有的csv檔 而寫入

让DataFrame中的行按照某一列元素的绝对值从大到小排列

一个数据预处理的问题

str.replace为什么会将数字替换成NaN

怎么求一个数组的移动平均数

分类特征的目标编码是什么意思?

机器学习中的过采样和欠采样是什么意思?

数据白化是什么意思?

  随便看看

训练集中有的特征含有缺失值,一般怎么处理

鞍点的数学定义是什么?

怎么把pandas dataframe中一列英文文本全部转成小写?

python(matplotlib)中如何把折线图和柱状图画在一起?

逻辑回归模型中变量的系数怎么理解?