У меня есть df с идентификаторами
id
0 1
1 2
2 3
3 4
, и мне нужно «присоединить влево» (или объединить влево) несколько фреймов данных, один за другим.
id text
0 1 Hello
1 2 World
2 100 Hello
и
id text
0 3 World
1 101 Hello
Примечание: я не могу загрузить все dfs сразу из-за ОЗУ.
Стандартный "left-join "...
import pandas as pd
df1 = pd.DataFrame({'id': [1,2,3,4]})
df2 = pd.DataFrame({'id': [1,2,100],
'text': ['Hello', 'World','Hello']})
df3 = pd.DataFrame({'id': [3,101],
'text': ['World', 'Hello']})
m1 = pd.merge(left=df1, right=df2, on="id", how="left")
m2 = pd.merge(left=m1, right=df3, on="id", how="left")
... дает мне:
id text_x text_y
0 1 Hello NaN
1 2 World NaN
2 3 NaN World
3 4 NaN NaN
Однако я хотел бы" обновить "столбец с правым соединением, чтобы я получил:
id text
0 1 Hello
1 2 World
2 3 World
3 4 NaN
Есть ли способ сделать это с помощью pd.merge?