通过两列连接两个数据框

时间:2018-07-09 07:47:24

标签: python pandas dataframe concatenation

我需要将2个熊猫的DataFrame串联起来2个单元。 示例:

df1 = pd.DataFrame({'col1':[1,2,3],'col2':[11,22,33]})
df2 = pd.DataFrame({'col1':[1,2,3,4,5,6],'col2':[11,22,33,44,55,66],'col3':[111,222,333,444,555,666]})

df2
    col1  col2  col3
       1    11   111
       2    22   222
       3    33   333
       4    44   444
       5    55   555
       6    66   666

df1
col1  col2
   1    11
   2    22
   3    33

结果:

col1  col2   col3 
   1    11    111
   2    22    222
   3    33    333

这里col1col2用作df2.col3形式的值的索引。 谢谢。 (对不起,我的英语不好)

1 个答案:

答案 0 :(得分:1)

您可以使用df.merge

例如:

import pandas as pd
df1 = pd.DataFrame({'col1':[1,2,3],'col2':[11,22,33]})
df2 = pd.DataFrame({'col1':[1,2,3,4,5,6],'col2':[11,22,33,44,55,66],'col3':[111,222,333,444,555,666]})

print( df2.merge(df1, on=["col1", "col2"]) )

输出:

   col1  col2  col3
0     1    11   111
1     2    22   222
2     3    33   333