定义两个Dataframe
df1 = pd.DataFrame(data=[[1, 2, 3], [4, 5, 6], [7, 8, 9]], columns=['a', 'b', 'c'], index=[0, 1, 2])
df2 = pd.DataFrame(data=[[11], [22], [33]], columns=['d'], index=[1, 2, 3])
按列合并
df = pd.concat([df1, df2], axis=1)
按我预想的结果应该是三行,但是却是4行。查询原因是,pd.concat()是按index合并的,上面两个index不一致,所以才会多一行。
解决办法是,把这两个df的index设置一致,我这里设置df2
df2.set_index(pd.Index([0, 1, 2]), inplace=True)
再次合并结果为