【Pandas】pandas DataFrame sub
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]) | 用于执行逐元素的减法操作 |
pandas.DataFrame.sub()
pandas.DataFrame.sub()
方法用于执行逐元素的减法操作。这个方法可以用于两个 DataFrame 之间的减法,也可以用于 DataFrame 和一个标量之间的减法。下面是对参数的详细描述:
other
: 可以是另一个 DataFrame、Series、Index、常量或可广播到相同形状的数组。axis
: 指定沿哪个轴进行操作。0
或'index'
表示沿行操作,1
或'columns'
表示沿列操作。level
: 如果索引是多重索引(MultiIndex),则可以指定沿哪个级别进行操作。fill_value
: 如果遇到缺失值(NaN),可以使用这个值来填充。
#示例
假设我们有两个 DataFrame:
import pandas as pddf1 = pd.DataFrame({'A': [1, 2, 3],'B': [4, 5, 6]
})df2 = pd.DataFrame({'A': [1, 1, 1],'B': [2, 2, 2]
})
示例 1: DataFrame 与 DataFrame 之间的减法
result = df1.sub(df2)
print(result)
输出:
A B
0 0 2
1 1 3
2 2 4
示例 2: DataFrame 与标量之间的减法
result = df1.sub(1)
print(result)
输出:
A B
0 0 3
1 1 4
2 2 5
示例 3: 使用 fill_value
处理缺失值
假设 df2
有一个缺失值:
df2.iloc[0, 0] = None # 设置 df2 中的一个值为 NaN
result = df1.sub(df2, fill_value=0)
print(result)
输出:
A B
0 1.0 2
1 1.0 3
2 2.0 4
在这个例子中,df2
中的第一个元素是 NaN
,使用 fill_value=0
后,df1
中的对应元素 1
减去 0
,结果仍然是 1
。
这些示例展示了 pandas.DataFrame.sub()
方法的基本用法和一些常见的情况。