PYTHON_分组(groupby,value_counts)

#1.全部数据集
data.groupby('col1').count() #单列分组
data.groupby(['col1','col2']).mean() #多列分组

#筛选部分列
data.groupby('col1')['col2','col3'].count()
data[['col1','col2','col3']].groupby(by=['col3']).count()
data['col1'].groupby(data['col2']).size()

#3.多种聚合
data.groupby('col1').agg({np.sum,np.mean,'count'})
data.groupby('col1').agg({'col2':'sum','col3':'mean'}) #对不同列选择不同的聚合方式

#4.等频后,分组
data['col1'].groupby([pd.qcut(data['col2'],50,duplicates='drop')]).sum()

#5.分组后,求各组占比
data_0=pd.DataFrame(data.groupby(['col1','col2'])['col3'].count())
data_0['占比']=data_0['col3']/data_0['col3'].sum()

#6.transform 可直接在源数据集上添加一列,不需要先groupby,再merge

data['col_new']=data.groupby('col1')['col2'].transform(min)

#6.value_counts
data['col1'].value_counts()
#参数有normalize :  默认false,如为true,则以百分比的形式显示
#sort : 默认为true,会对结果进行排序
#ascending : default False 默认降序排序
#bins : integer, 格式(bins=1),类似于pd.cut
#dropna : default True 默认删除na值

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值