将两个具有相同索引的Pandas数据帧组合在一起

ale*_*alo 25 python pandas

我有两个具有相同索引但不同列的数据帧.如何将它们组合成具有相同索引但包含所有列的一个?

我有:

  A 
1 10 
2 11

  B
1 20
2 21
Run Code Online (Sandbox Code Playgroud)

我需要以下输出:

  A  B
1 10 20
2 11 21
Run Code Online (Sandbox Code Playgroud)

Bre*_*arn 51

pandas.concat([df1, df2], axis=1)
Run Code Online (Sandbox Code Playgroud)

  • @LiamFoley:`merge`用于连接式操作.如果你只想连接DataFrames,那就是`concat`. (7认同)
  • 谢谢!我会写 `pandas.concat([df1, df2], axis='columns')` 以获得更具可读性的版本 (6认同)
  • 为什么在pd.merge上使用pd.concat? (2认同)

and*_*ens 8

根据数据帧的复杂程度,您可以选择几个选项:

选项1:

df1.join(df2, how='outer')
Run Code Online (Sandbox Code Playgroud)

选项2:

pd.merge(df1, df2, left_index=True, right_index=True, how='outer')
Run Code Online (Sandbox Code Playgroud)