Pandas2.2 DataFrame
Binary operator functions
方法 | 描述 |
---|---|
DataFrame.add(other) | 用于执行 DataFrame 与另一个对象(如 DataFrame、Series 或标量)的逐元素加法操作 |
DataFrame.add(other[, axis, level, fill_value]) | 用于执行 DataFrame 与另一个对象(如 DataFrame、Series 或标量)的逐元素加法操作 |
DataFrame.sub(other[, axis, level, fill_value]) | 用于执行逐元素的减法操作 |
DataFrame.mul(other[, axis, level, fill_value]) | 用于执行逐元素的乘法操作 |
DataFrame.div(other[, axis, level, fill_value]) | 用于执行逐元素的除法操作 |
DataFrame.truediv(other[, axis, level, …]) | 用于执行逐元素的真除法操作 |
DataFrame.floordiv(other[, axis, level, …]) | 用于执行逐元素的地板除法操作 |
DataFrame.mod(other[, axis, level, fill_value]) | 用于执行逐元素的取模操作 |
DataFrame.pow(other[, axis, level, fill_value]) | 用于对 DataFrame 中的元素进行幂运算 |
DataFrame.dot(other) | 用于计算两个 DataFrame(或 DataFrame 与 Series/数组)之间的**矩阵点积(矩阵乘法)**的方法 |
DataFrame.radd(other[, axis, level, fill_value]) | 用于执行反向加法运算 |
DataFrame.rsub(other[, axis, level, fill_value]) | 用于执行反向减法运算 |
DataFrame.rmul(other[, axis, level, fill_value]) | 用于执行反向乘法运算 |
DataFrame.rdiv(other[, axis, level, fill_value]) | 用于执行反向除法运算 |
DataFrame.rtruediv(other[, axis, level, …]) | 用于执行反向真除法运算 |
DataFrame.rfloordiv(other[, axis, level, …]) | 用于执行反向整除运算(地板除法) |
DataFrame.rmod(other[, axis, level, fill_value]) | 用于按元素计算反向模运算(即 other % DataFrame ) |
DataFrame.rpow(other[, axis, level, fill_value]) | 用于按元素计算反向幂运算(即 other ** DataFrame ) |
DataFrame.lt(other[, axis, level]) | 用于按元素比较两个 DataFrame 或一个 DataFrame 和一个标量,判断前者是否小于后者 |
DataFrame.gt(other[, axis, level]) | 用于按元素比较两个 DataFrame 或一个 DataFrame 和一个标量,判断前者是否大于后者 |
DataFrame.le(other[, axis, level]) | 用于按元素比较两个 DataFrame 或一个 DataFrame 和一个标量,判断前者是否小于或等于后者 |
DataFrame.ge(other[, axis, level]) | 用于按元素比较两个 DataFrame 或一个 DataFrame 和一个标量,判断前者是否大于或等于后者 |
DataFrame.ne(other[, axis, level]) | 用于按元素比较两个 DataFrame 或一个 DataFrame 和一个标量,判断前者是否不等于后者 |
DataFrame.eq(other[, axis, level]) | 用于按元素比较两个 DataFrame 或一个 DataFrame 和一个标量,判断前者是否等于后者 |
DataFrame.combine(other, func[, fill_value, …]) | 用于将两个 DataFrame 按元素进行组合,并应用一个自定义的函数 func 来处理这些元素 |
DataFrame.combine_first(other) | 用于将另一个 DataFrame 中的值填充到当前 DataFrame 中的缺失值位置 |
pandas.DataFrame.combine_first()
pandas.DataFrame.combine_first(other)
是 Pandas 中的一个方法,用于将另一个 DataFrame 中的值填充到当前 DataFrame 中的缺失值位置。如果当前 DataFrame 中的某个位置有值,则保持不变;如果当前 DataFrame 中的某个位置缺失值(NaN
),则用另一个 DataFrame 中对应位置的值填充。
参数说明:
other
: 另一个 DataFrame,用于填充当前 DataFrame 中的缺失值。
示例
假设我们有两个 DataFrame:
import pandas as pd
import numpy as np
df1 = pd.DataFrame({
'A': [1, 2, np.nan],
'B': [4, np.nan, 6]
})
df2 = pd.DataFrame({
'A': [np.nan, 20, 30],
'B': [40, 50, 60]
})
示例 1: 使用 combine_first
result = df1.combine_first(df2)
print(result)
输出结果:
A B
0 1.0 4.0
1 2.0 50.0
2 30.0 6.0
解释
- 在示例 1 中,
df1.combine_first(df2)
将df2
中的值填充到df1
中的缺失值位置。df1
中A
列的第三个元素是NaN
,被df2
中A
列的第三个元素30.0
填充。df1
中B
列的第二个元素是NaN
,被df2
中B
列的第二个元素50.0
填充。df1
中其他位置已有值,保持不变。
这个方法在需要合并两个 DataFrame 并填充缺失值时非常有用,特别是在数据清洗和预处理阶段。