python中sub函数用法_Python pandas.DataFrame.sub函数方法的使用

DataFrame.sub(other, axis='columns', level=None, fill_value=None)[source]

获取DataFrame和其他元素的减法(二进制运算符sub)。

与等效,但支持用fill_value替换输入之一中的丢失数据。rsub是反向版本。dataframe - other

在灵活的包装器(add,sub,mul,div,mod,pow)中使用算术运算符:+,-,*,/,//,%,**。

参数:other:scalar, sequence, Series, 或 DataFrame

任何单个或多个元素的数据结构,或类列表的对象。

axis:{0或‘index’, 1 或‘columns’}

是按索引(0或'index ')还是按列(1或' columns ')进行比较。

对于Series输入,轴匹配Series索引。

level:int或 label

跨级别广播,匹配通过的多索引级别上的索引值。

fill_value :float 或 None, 默认为 None

在计算之前,用这个值填充现有的NaN值,

以及成功的DataFrame对齐所需的任何新元素。

如果两个对应的DataFrame位置中的数据丢失,

则结果将丢失。

返回值:DataFrame

算术运算的结果。

Notes

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

例子>>> 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中sub函数用法)