首页 > 解决方案 > 用另一个数据框的列更新数据框的列并保留列顺序

问题描述

df1 = pd.DataFrame(columns=['a','B','c','D'])    
df2 = pd.DataFrame({'a':[1,2],'B':[3,4]})

我想更新空列df1df2但保持原始列顺序。我试过了

df1.combine_first(df2)

但这会改变列的顺序

   B   D  a   c
0  3 NaN  1 NaN
1  4 NaN  2 NaN

标签: pythonpandas

解决方案


尝试reindex

df2.reindex(df1.columns, axis=1)
Out[44]: 
   a  B   c   D
0  1  3 NaN NaN
1  2  4 NaN NaN

推荐阅读