pandas.DataFrame.combine_first#
- DataFrame.combine_first(other)[源代码][源代码]#
使用 other 中相同位置的值更新空元素。
通过将一个DataFrame中的空值填充为另一个DataFrame中的非空值来合并两个DataFrame对象。结果DataFrame的行和列索引将是两者的并集。结果DataFrame包含’第一个’DataFrame的值,并在调用first.combine_first(second)时,如果first.loc[index, col]和second.loc[index, col]都不是缺失值,则覆盖第二个DataFrame的值。
- 参数:
- 其他DataFrame
提供的 DataFrame 用于填充空值。
- 返回:
- 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
如果该空值的位置在 other 中不存在,空值仍然会保留。
>>> 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