Python Dataframe与多个索引合并

时间:2016-04-28 18:57:51

标签: python pandas dataframe merge append

我需要帮助将2个数据帧合并2个索引(id或desc和year)。我试过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以及将新值2合并/追加到数据帧的年份。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

使用on=['col1','col2','col3']

尝试.merge()
In [24]: df1.merge(df2, on=['id','desc','year'])
Out[24]:
   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