Python 熊猫将数据帧与不同的索引相结合

Python 熊猫将数据帧与不同的索引相结合,python,pandas,dataframe,Python,Pandas,Dataframe,我有两个数据帧df_1和df_2,具有不同的索引和列。但是,有些索引和列是重叠的 我用索引和列的并集创建了一个数据帧df:因此不存在重复的索引或列 我想用以下方式填充数据框df: for x in df.index: for y in df.columns: df.loc[x,y] = df_1.loc[x,y] if (x,y) in (df_1.index,df_1.columns) else df_2.loc[x,y] 有人能告诉我一个有效的方法吗 谢谢 我认为您需要: 太神

我有两个数据帧
df_1
df_2
,具有不同的索引和列。但是,有些索引和列是重叠的

我用索引和列的并集创建了一个数据帧
df
:因此不存在重复的索引或列

我想用以下方式填充数据框
df

for x in df.index:
  for y in df.columns:
    df.loc[x,y] = df_1.loc[x,y] if (x,y) in (df_1.index,df_1.columns) else df_2.loc[x,y]
有人能告诉我一个有效的方法吗

谢谢

我认为您需要:


太神了索引和列是否自动排序?因为我的索引是日期索引。我想是的,但不是100%确定,所以如果不添加
.sort\u index()
。我测试它,它会很好地排序datetimeindex。我也用它来改变样品。
df_1 = pd.DataFrame({'A':[1,2,3],
                     'E':[4,5,6],
                     'V':[7,8,9],
                     'D':[1,3,5]}, 
                     index=pd.to_datetime(['2017-01-05', '2017-01-04', '2017-01-01']))

print (df_1)
            A  D  E  V
2017-01-05  1  1  4  7
2017-01-04  2  3  5  8
2017-01-01  3  5  6  9

df_2 = pd.DataFrame({'A':[1,2,3],
                     'B':[4,5,6],
                     'C':[7,8,9]}, index=pd.date_range('2017-01-01', periods=3)) * 10

print (df_2)
             A   B   C
2017-01-01  10  40  70
2017-01-02  20  50  80
2017-01-03  30  60  90

df = df_1.combine_first(df_2)
print (df)
               A     B     C    D    E    V
2017-01-01   3.0  40.0  70.0  5.0  6.0  9.0
2017-01-02  20.0  50.0  80.0  NaN  NaN  NaN
2017-01-03  30.0  60.0  90.0  NaN  NaN  NaN
2017-01-04   2.0   NaN   NaN  3.0  5.0  8.0
2017-01-05   1.0   NaN   NaN  1.0  4.0  7.0