maxframe.dataframe.DataFrame.rsub#

DataFrame.rsub(other, axis='columns', level=None, fill_value=None)#

获取 DataFrame 与其他数据结构的逐元素减法(二元运算符 rsubtract)。等价于 -,但支持为其中一个输入中的缺失数据指定一个 fill_value。与之对应的反向版本是 subtract。在灵活包装器(addsubmuldivmodpow)中实现算术运算符:+-*///%**

参数:
  • other (scalar, sequence, Series, or DataFrame) -- 任何单个或多个元素的数据结构,或者类列表对象。

  • axis ({0 or 'index', 1 or 'columns'}) -- 是否按索引(0 或 'index')或列(1 或 'columns')进行比较。对于 Series 输入,axis 表示与 Series 索引对齐的轴。

  • level (int or label) -- 跨层级广播,在传入的 MultiIndex 层级上匹配索引值。

  • fill_value (float or None, default None) -- 在计算之前,使用此值填充已有的缺失(NaN)值,以及 DataFrame 对齐所需的新元素。如果两个 DataFrame 对应位置的数据都缺失,则结果也将为缺失。

返回:

算术运算的结果。

返回类型:

DataFrame

参见

DataFrame.add

将 DataFrames 相加。

DataFrame.sub

将 DataFrames 相减。

DataFrame.mul

将 DataFrames 相乘。

DataFrame.div

将 DataFrames 相除(浮点除法)。

DataFrame.truediv

将 DataFrames 相除(浮点除法)。

DataFrame.floordiv

将 DataFrames 相除(整数除法)。

DataFrame.mod

计算模(除法后的余数)。

DataFrame.pow

计算指数幂。

备注

不匹配的索引将被合并在一起。

示例

>>> import maxframe.dataframe as md
>>> df = md.DataFrame({'angles': [0, 3, 4],
...                    'degrees': [360, 180, 360]},
...                   index=['circle', 'triangle', 'rectangle'])
>>> df.execute()
           angles  degrees
circle          0      360
triangle        3      180
rectangle       4      360

使用运算符版本添加一个标量并返回相同的结果。

>>> (df + 1).execute()
           angles  degrees
circle          1      361
triangle        4      181
rectangle       5      361
>>> df.add(1).execute()
           angles  degrees
circle          1      361
triangle        4      181
rectangle       5      361

除以常数的反向版本。

>>> df.div(10).execute()
           angles  degrees
circle        0.0     36.0
triangle      0.3     18.0
rectangle     0.4     36.0
>>> df.rdiv(10).execute()
             angles   degrees
circle          inf  0.027778
triangle   3.333333  0.055556
rectangle  2.500000  0.027778

按轴减去列表和 Series 的运算符版本。

>>> (df - [1, 2]).execute()
           angles  degrees
circle         -1      358
triangle        2      178
rectangle       3      358
>>> df.sub([1, 2], axis='columns').execute()
           angles  degrees
circle         -1      358
triangle        2      178
rectangle       3      358
>>> df.sub(md.Series([1, 1, 1], index=['circle', 'triangle', 'rectangle']),
...        axis='index').execute()
           angles  degrees
circle         -1      359
triangle        2      179
rectangle       3      359

将不同形状的 DataFrame 相乘的运算符版本。

>>> other = md.DataFrame({'angles': [0, 3, 4]},
...                      index=['circle', 'triangle', 'rectangle'])
>>> other.execute()
           angles
circle          0
triangle        3
rectangle       4
>>> df.mul(other, fill_value=0).execute()
           angles  degrees
circle          0      0.0
triangle        9      0.0
rectangle      16      0.0