pandas.DataFrame.combine_first #

数据框。merge_first (其他) [来源] #

使用other中相同位置的值更新 null 元素。

通过用另一个 DataFrame 中的非空值填充一个 DataFrame 中的空值来组合两个 DataFrame 对象。生成的 DataFrame 的行索引和列索引将是两者的并集。生成的数据帧包含“第一个”数据帧值,并覆盖第二个值,其中在调用first.combine_first(second)时,first.loc[index, col]和second.loc[index, col]都不是缺失值。

参数
其他数据框

提供用于填充空值的 DataFrame。

返回
数据框

将提供的 DataFrame 与其他对象组合的结果。

也可以看看

DataFrame.combine

使用给定函数对两个 DataFrame 执行系列操作。

例子

>>> df1 = pd.DataFrame({'A': [None, 0], 'B': [None, 4]})
>>> df2 = pd.DataFrame({'A': [1, 1], 'B': [3, 3]})
>>> df1.combine_first(df2)
     A    B
0  1.0  3.0
1  0.0  4.0

如果该空值的位置不存在于其他位置,则空值仍然存在

>>> df1 = pd.DataFrame({'A': [None, 0], 'B': [4, None]})
>>> df2 = pd.DataFrame({'B': [3, 3], 'C': [1, 1]}, index=[1, 2])
>>> df1.combine_first(df2)
     A    B    C
0  NaN  4.0  NaN
1  0.0  3.0  1.0
2  NaN  3.0  1.0