私は次の問題を抱えています:異なる長さの2つのパンダデータフレームに共通の値と、異なる長さの2つのpython pandasデータフレームをマージして出力データフレームにすべての行を残します
df1: df2:
Column1 Column2 Column3 ColumnA ColumnB ColumnC
0 a x x 0 c y y
1 c x x 1 e z z
2 e x x 2 a s s
3 d x x 3 d f f
4 h x x
5 k x x
ColumnAと列1が同じ値を持っている場合はDF2からの行はこのように、DF1に対応する行に追加されるように、私が今やりたいことは2つのデータフレームをマージされています:
このようなdf1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
私はマージが実行可能であることを知っていますugh df1.merge(df2,left_on='Column1', right_on='ColumnA')
しかし、このコマンドは、両方のファイルのColumn1とColumnAで同じでないすべての行を削除します。その代わりに、これらの行をdf1に保存し、上記のように、他の行がdf2の値を持つ列にNaNを代入するだけです。パンダでこれを行うにはスムーズな方法がありますか?
ありがとうございます!
私は彼が実際には '左に参加するために探していると思う:) – Mathiou
あなたは正しいです。私は答えを編集します。 – Sina
私はドキュメントを読むでしょう、速い答えをありがとう!正常に動作します。 –