0
私は結合したい3つのデータフレームを持っています。所望の出力がPython - Combinig pandas dataframes
df3
col1 col3 col2
1 some 5
2 data 9
どのように私はこれを達成できているので、私は、col1
に基づいて、第3 DFにマージする最初の2 DF-Sを希望
df1 |df2 |df3
col1 col2 |col1 col2 |col1 col3
1 5 2 9 1 some
2 data
:彼らはこのようになります?私がしようとしている。このため
df3['col2'] = df1[df1.col1 == df3.col1].col2 if df1[df1.col1 == df3.col1].col2 is not None else df2[df2.col1 == df3.col1].col2
は私がValueError: Series lengths must match to compare
は、df3
のcol1
値はどちらかdf1
またはdf2
に存在していることを、保証され得ます。これを行う方法は何ですか?単純なconcat
は、他のデータがdf3
にあり、それだけでなく、col1
であるため、動作しません。
あなたが行うことができますIIUC 'df3.merge(df1、on = 'col 1 '、how =' outer ')。merge(df2、on =' col1 '、how =' outer ') ' – EdChum