我有以下数据帧1 df1:
index tech_1 tech_2 tech_3 .....
01_es NA NA 1
02_es 1 2 NA
03_es 2 1 2
04_es 1 NA 2
05_es NA NA NA
和另一个数据框2 df2:
index id column_1 column_2 column_3
0 01_es data data data
1 02_es data data data
2 03_es data data data
3 04_es data data data
4 05_es data data data
每当df1.index与df2.id匹配到新df2.columns时,我都希望将df1合并到df2中,从而将所有数据保留在df2上。我将使用几个df1执行此操作。
新df2:
index id column_1 column_2 column_3 tech_1 tech_2 tech_3
0 01_es data data data NA NA 1
1 02_es data data data 1 2 NA
2 03_es data data data 2 1 2
3 04_es data data data 1 NA 2
4 05_es data data data NA NA NA
df1可能很大,具有不同的列数,并且可能不是所有的行都作为df2.id。我有几个文件可以运行脚本。我该怎么办?
谢谢!
答案 0 :(得分:1)
在此处https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.merge.html
中查看文档如果保证数据帧df2的id列唯一,则可以将其设置为索引并进行合并。
df2.set_index('id').merge(df1, left_index=True, right_index=True)
现在对于df1中有不同列的情况,您可以通过传递“ how”参数进行合并来定义您的首选项,请阅读文档以了解详细信息。