我正在尝试组合数据帧_A:
file 1
file 2
file 3
file 4
file 5
带数据帧_B:
file 2 | some data | more data
file 4 | other data | additional data
file 5 | data | data data
沿着file_name列,最后显示如下内容:
file 1 | ~ | ~
file 2 | some data | more data
file 3 | ~ | ~
file 4 | other data | additional data
file 5 | data | data data
我想最终得到一个长度为dataframe_a的数据帧,以及来自dataframe_B的所有数据,并在中间的空格中使用空白/任何东西。
到目前为止,我尝试过的连接和合并最终得到的东西看起来像dataframe_B,这不是我想要的。我需要做什么?
使用merge
和how='left'
参数:
>>> dfA.merge(dfB, on='A', how='left').fillna('~')
A B C
0 file 1 ~ ~
1 file 2 some data more data
2 file 3 ~ ~
3 file 4 other data additional data
4 file 5 data data data
我建议阅读我们的扩展介绍:Pandas Merging 101
设置:
dfA = pd.DataFrame({'A': ['file 1', 'file 2', 'file 3', 'file 4', 'file 5']})
dfB = pd.DataFrame({'A': ['file 2', 'file 4', 'file 5'],
'B': ['some data', 'other data', 'data'],
'C': ['more data', 'additional data', 'data data']})