用法:
DataFrame.sub(other, axis='columns', level=None, fill_value=None)
获取数据帧和其他元素的减法(二元运算符
sub
)。等效于
dataframe - other
,但支持用 fill_value 替换其中一个输入中的缺失数据。使用反向版本rsub
。在柔性包装(
add
,sub
,mul
,div
,mod
,pow
) 到算术运算符:+
,-
,*
,/
,//
,%
,**
.- other:标量、序列、系列或数据帧
任何单元素或多元素数据结构,或list-like 对象。
- axis:{0 或 ‘index’、1 或 ‘columns’}
是按索引(0 或‘index’)还是按列(1 或‘columns’)进行比较。对于系列输入,轴匹配系列索引。
- level:整数或标签
跨级别广播,匹配传递的 MultiIndex 级别上的索引值。
- fill_value:浮点数或无,默认无
在计算之前使用此值填充现有的缺失 (NaN) 值以及成功对齐 DataFrame 所需的任何新元素。如果两个相应的 DataFrame 位置中的数据都丢失,则结果将丢失。
- DataFrame
算术运算的结果。
参数:
返回:
注意:
不匹配的索引将合并在一起。
例子:
>>> df = pd.DataFrame({'angles':[0, 3, 4], ... 'degrees':[360, 180, 360]}, ... index=['circle', 'triangle', 'rectangle']) >>> df angles degrees circle 0 360 triangle 3 180 rectangle 4 360
添加一个带有返回相同结果的运算符版本的标量。
>>> df + 1 angles degrees circle 1 361 triangle 4 181 rectangle 5 361
>>> df.add(1) angles degrees circle 1 361 triangle 4 181 rectangle 5 361
用反向版本除以常数。
>>> df.div(10) angles degrees circle 0.0 36.0 triangle 0.3 18.0 rectangle 0.4 36.0
>>> df.rdiv(10) angles degrees circle inf 0.027778 triangle 3.333333 0.055556 rectangle 2.500000 0.027778
使用操作符版本按轴减去列表和系列。
>>> df - [1, 2] angles degrees circle -1 358 triangle 2 178 rectangle 3 358
>>> df.sub([1, 2], axis='columns') angles degrees circle -1 358 triangle 2 178 rectangle 3 358
>>> df.sub(pd.Series([1, 1, 1], index=['circle', 'triangle', 'rectangle']), ... axis='index') angles degrees circle -1 359 triangle 2 179 rectangle 3 359
将不同形状的 DataFrame 与运算符版本相乘。
>>> other = pd.DataFrame({'angles':[0, 3, 4]}, ... index=['circle', 'triangle', 'rectangle']) >>> other angles circle 0 triangle 3 rectangle 4
>>> df * other angles degrees circle 0 NaN triangle 9 NaN rectangle 16 NaN
>>> df.mul(other, fill_value=0) angles degrees circle 0 0.0 triangle 9 0.0 rectangle 16 0.0
按级别除以 MultiIndex。
>>> df_multindex = pd.DataFrame({'angles':[0, 3, 4, 4, 5, 6], ... 'degrees':[360, 180, 360, 360, 540, 720]}, ... index=[['A', 'A', 'A', 'B', 'B', 'B'], ... ['circle', 'triangle', 'rectangle', ... 'square', 'pentagon', 'hexagon']]) >>> df_multindex angles degrees A circle 0 360 triangle 3 180 rectangle 4 360 B square 4 360 pentagon 5 540 hexagon 6 720
>>> df.div(df_multindex, level=1, fill_value=0) angles degrees A circle NaN 1.0 triangle 1.0 1.0 rectangle 1.0 1.0 B square 0.0 0.0 pentagon 0.0 0.0 hexagon 0.0 0.0
相关用法
- Python pandas.DataFrame.subtract用法及代码示例
- Python pandas.DataFrame.sum用法及代码示例
- Python pandas.DataFrame.sparse.from_spmatrix用法及代码示例
- Python pandas.DataFrame.select_dtypes用法及代码示例
- Python pandas.DataFrame.size用法及代码示例
- Python pandas.DataFrame.stack用法及代码示例
- Python pandas.DataFrame.set_index用法及代码示例
- Python pandas.DataFrame.sort_index用法及代码示例
- Python pandas.DataFrame.shape用法及代码示例
- Python pandas.DataFrame.swaplevel用法及代码示例
- Python pandas.DataFrame.sort_values用法及代码示例
- Python pandas.DataFrame.shift用法及代码示例
- Python pandas.DataFrame.set_flags用法及代码示例
- Python pandas.DataFrame.sparse.to_dense用法及代码示例
- Python pandas.DataFrame.squeeze用法及代码示例
- Python pandas.DataFrame.std用法及代码示例
- Python pandas.DataFrame.sample用法及代码示例
- Python pandas.DataFrame.set_axis用法及代码示例
- Python pandas.DataFrame.ewm用法及代码示例
- Python pandas.DataFrame.dot用法及代码示例
注:本文由纯净天空筛选整理自pandas.pydata.org大神的英文原创作品 pandas.DataFrame.sub。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。