【发布时间】:2016-08-23 17:26:37
【问题描述】:
我需要帮助按 2 个索引(id 或 desc 和年份)合并 2 个数据帧。我试过 result = pd.concat([df1, s1], axis=1, ignore_index=True) 但我无法让它工作。
df1:
id desc year value1
0 1 var1 2000 10
1 1 var1 2001 15
2 1 var1 2002 952
3 2 var2 2000 85
4 2 var2 2001 16
5 2 var2 2002 12
6 3 var3 2000 112
7 3 var3 2001 89
df2:
id desc year value2
0 1 var1 2000 44
1 1 var1 2001 33
2 1 var1 2002 22
3 2 var2 2000 11
...
To:
id desc year value1 value2
0 1 var1 2000 10 44
1 1 var1 2001 15 33
2 1 var1 2002 952 22
3 2 var2 2000 85 11
因此索引是 id 或 desc 和 year 以将新 value2 合并/附加到数据框。有什么想法吗?
【问题讨论】:
-
您可以使用
df1.merge(df2, on=['id','desc','year'])和可选的how='left'|'right'|'outer'
标签: python pandas dataframe merge append