我肯定在这里遗漏了一些简单的东西.尝试在大多数具有相同列名的pandas中合并两个数据帧,但右侧数据框有一些左侧没有的列,反之亦然.
>df_may
id quantity attr_1 attr_2
0 1 20 0 1
1 2 23 1 1
2 3 19 1 1
3 4 19 0 0
>df_jun
id quantity attr_1 attr_3
0 5 8 1 0
1 6 13 0 1
2 7 20 1 1
3 8 25 1 1
Run Code Online (Sandbox Code Playgroud)
我尝试加入外连接:
mayjundf = pd.DataFrame.merge(df_may, df_jun, how="outer")
Run Code Online (Sandbox Code Playgroud)
但那会产生:
Left data columns not unique: Index([....
Run Code Online (Sandbox Code Playgroud)
我还指定了一个要加入的列(on ="id",例如),但是复制除"id"之外的所有列,如attr_1_x,attr_1_y,这是不理想的.我还将整个列列表(有很多)传递给"on":
mayjundf = pd.DataFrame.merge(df_may, df_jun, how="outer", on=list(df_may.columns.values))
Run Code Online (Sandbox Code Playgroud)
产量:
ValueError: Buffer has wrong number of dimensions …Run Code Online (Sandbox Code Playgroud)