如何解决如何使用python基于标签计算对象数?
price type status
2 shoes none
3 clothes none
6 clothes none
3 shoes none
4 shoes none
6 shoes none
2 clothes none
3 shoes none
6 clothes none
8 clothes done
我想查看每次完成状态后基于“类型”的每个价格的计数。 例如: 对于鞋子类型:
price count
2 1
3 2
4 1
6 1
到目前为止,我已经尝试过:
g = df['status'].eq('done').iloc[::-1].cumsum().iloc[::-1]
df_freq = df.groupby([g,'type']).apply(lambda x: x['price'].size().reset_index(name = "count"))
很遗憾,它不适用于我的数据。 如何使用python制作
?谢谢。
解决方法
将输出作为一个数据帧的代码:
group = df[df['status'].eq('none')].groupby('type').apply(lambda x: x.groupby('price').count())
group.columns = ['type','count']
grouped_df = pd.DataFrame(group['count'])
print(grouped_df)
# output
count
type price
clothes 2 1
3 1
6 2
shoes 2 1
3 2
4 1
6 1
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。