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

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

添加dataframe和其他元素(二进制操作符add)。

等价于dataframe + other,但是支持用fill_value替换其中一个输入中缺失的数据。使用反向版本,radd。

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

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

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

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

不论通过index(0 或 ‘index’)或columns(1 or ‘columns’)进行比较。

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

level : int 或 label

跨level广播,匹配传递的MultiIndex level的索引值。

fill_value : float 或 None, 默认 None

在计算之前,用这个值填充现有的缺失值(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

用操作符版本按axis减去列表和序列>>> 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的level>>> 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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值