我有两个熊猫数据框:

df1
    id frid title
    1  1    abc
    2  1    ddd
    3  2    ghc
    4  3    frg
    5  1    def

df2
    frid comment
    1    w
    2    s
    3    e


现在,我想基于字段frid合并这两个数据帧。换句话说,我想将列comment添加到df1。我怎样才能做到这一点?我知道join命令,但是它的工作方式不同(df1.join(df2))。

结果应为:

df
    id frid title comment
    1  1    abc   w
    2  1    ddd   w
    3  2    ghc   s
    4  3    frg   e
    5  1    def   w

最佳答案

使用merge并传递要合并的列,默认情况下会执行“内部”合并:

In [198]:
df1.merge(df2, on='frid')

Out[198]:
   id  frid title comment
0   1     1   abc       w
1   2     1   ddd       w
2   5     1   def       w
3   3     2   ghc       s
4   4     3   frg       e

09-25 18:03