【发布时间】:2016-08-03 03:24:56
【问题描述】:
我的 DataFrame 是这样的
exams = pd.DataFrame({'id1':['1x', '1x','2x','3x','3x'], 'id2':['a','a','b','a','a'],'data':[1,2,3,4,5]})
id1 id2 data
0 1x a 1
1 1x a 2
2 2x b 3
3 3x a 4
4 3x a 5
然后我把它聚合成
exams_agg = exams.groupby('id1').agg('mean')
然后exams_agg 看起来像
data
id1
1x 1.5
2x 3
3x 4.5
我想将id2 列重新附加到exams_agg。所以我在考虑创建一个查找表
lookup = exams[['id1', 'id2']]
exams_agg = pd.merge(exams_agg, lookup, left_index=True, right_on='id1')
但由于 lookup 包含重复的 id 对,exams_agg 也包含重复的。有什么好的创作方式
data id2
id1
1x 1.5 a
2x 3 b
3x 4.5 a
【问题讨论】:
标签: python pandas merge aggregate