df1
0 1 2 3 a 5.1 4.7 4.9 2.4 b 3.0 3.2 3.0 6.2 c 4.5 1.3 2.7 1.8 d 1.4 1.9 1.4 0.5 e 0.2 0.2 0.2 3.5
newdf
0 1 2 3 0 10 45 13 1 1 47 15 46 42 2 38 26 20 11 3 9 16 44 23 4 45 6 24 35
concat
合併,設置參數axis=1
,ignore_index=True
pd.concat([df1,newdf],axis=1,ignore_index=True)
0 1 2 3 4 5 6 7 a 5.1 4.7 4.9 2.4 NaN NaN NaN NaN b 3.0 3.2 3.0 6.2 NaN NaN NaN NaN c 4.5 1.3 2.7 1.8 NaN NaN NaN NaN d 1.4 1.9 1.4 0.5 NaN NaN NaN NaN e 0.2 0.2 0.2 3.5 NaN NaN NaN NaN 0 NaN NaN NaN NaN 10.0 45.0 13.0 1.0 1 NaN NaN NaN NaN 47.0 15.0 46.0 42.0 2 NaN NaN NaN NaN 38.0 26.0 20.0 11.0 3 NaN NaN NaN NaN 9.0 16.0 44.0 23.0 4 NaN NaN NaN NaN 45.0 6.0 24.0 35.0
axis=0
的時候有效,列表成功合併,並且index的確被忽略了。pd.concat([df1,newdf],axis=0,ignore_index=True)
0 1 2 3 0 5.1 4.7 4.9 2.4 1 3.0 3.2 3.0 6.2 2 4.5 1.3 2.7 1.8 3 1.4 1.9 1.4 0.5 4 0.2 0.2 0.2 3.5 5 10.0 45.0 13.0 1.0 6 47.0 15.0 46.0 42.0 7 38.0 26.0 20.0 11.0 8 9.0 16.0 44.0 23.0 9 45.0 6.0 24.0 35.0
df1.reset_index(drop=True, inplace=True) df2.reset_index(drop=True, inplace=True)
ignore_index = True
並不意味忽略index而後鏈接,而是指鏈接後再從新賦值index(len(index))。從上面能夠看出若是兩個df有重疊的索引仍是能夠自動合併的。
原解釋code
ignore_index = True'忽略',表示未在鏈接軸上對齊。它只是按它們傳遞的順序將它們粘貼在一塊兒,而後從新分配實際索引的範圍(例如,範圍(len(索引))),以便加入非重疊索引之間的差別(假設示例中的軸= 1)是,使用ignore_index = False(默認值),您得到索引的concat,並使用ignore_index = True得到範圍。