python - 如何处理熊猫中的半相似行
问题描述
我想price
根据不同行中的相似列family
和city
列进行平均,假设我有以下数据框,
df1 = [ID, name, family, city, price
1, a, g, u, 25
2, f, b, c, 20
3, i, b, c, 15
4, k, b, c, 10
5, r, b, c, 15
6, d, r, t, 20
7, q, x, s, 11]
我预期的数据框是:
df1 = [ID, name, family, city, price
1, a, g, u, 25
2, f, b, c, 15
3, i, b, c, 15
4, k, b, c, 15
5, r, b, c, 15
6, d, r, t, 20
7, q, x, s, 11]
我用过groupby
,但效果不好,
shareg1 = df1[['ID','name','family','city','price']].groupby(['family','city']).mean().reset_index()`
解决方案
惯用伎俩
df1['avg_price']= df1[['ID','name','family','city','price']].groupby(['family','city']).price.transform('mean')
推荐阅读
- javascript - 如何检查二维数组中的给定列是否包含从 0 到 n 的所有特定数字?
- relational-database - 为什么我不能比较 2 个具有不同数量的关系元组的表?
- sql-server - 为什么从我的批处理文件中调用 sqlcmd 的结果不可靠?
- java - 陈述 3 为假而 4 为真
- javascript - 如何禁用按“Enter”键提交表单?反应
- vue.js - 使 Vue.js 提供/注入反应式
- excel - Excel VBA 问题 - 复制索引范围的语法
- android - 如何复用组件?
- php - 复选框不会从 HTML 表单更新
- php - 标题自定义帖子类型 ACF