DataFrame.combine_first(other)
更新与null值的元素在同一位置等。
通过在一个DataFrame中使用来自其他DataFrame的非null值填充空值来组合两个DataFrame对象。生成的DataFrame的行索引和列索引将是两者的并集。
参数: | other : DataFrame 提供了用于填充空值的DataFrame。 |
返回: | combined : DataFrame |
例子
import pandas as pd import numpy as np # 创建示例数据 data1 = {'A': [1, 2, np.nan, 4], 'B': [5, np.nan, 7, np.nan], 'C': [np.nan, 10, 11, 12]} df1 = pd.DataFrame(data1) data2 = {'A': [10, 20, 30, 40], 'B': [50, 60, 70, 80], 'C': [90, 100, 110, 120]} df2 = pd.DataFrame(data2) # 使用 combine_first 方法合并两个 DataFrame result = df1.combine_first(df2) print("Original DataFrame df1:") print(df1) print("\nOriginal DataFrame df2:") print(df2) print("\nCombined DataFrame:") print(result)
import pandas as pd import numpy as np # Example 1 df1 = pd.DataFrame({'A': [None, 0], 'B': [None, 4]}) df2 = pd.DataFrame({'A': [1, 1], 'B': [3, 3]}) result1 = df1.combine_first(df2) # Example 2 df3 = pd.DataFrame({'A': [None, 0], 'B': [4, None]}) df4 = pd.DataFrame({'B': [3, 3], 'C': [1, 1]}, index=[1, 2]) result2 = df3.combine_first(df4) print("Example 1:") print(result1) print("\nExample 2:") print(result2)