Python学习笔记:add、sub、mul、div、mod、pow

一、介绍

add() 函数用于向调用者添加对象。

使用语法为:

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

实际上等价于 dataframe + other 的直接使用相加语法。

区别在于支持使用 fill_value 替换缺失值数据。

反向版本为:radd

其他灵活的包装器(add、sub、mul、div、mod、pow)均类似,分别对应(+、-、*、/、//、**)等。

二、实操

1.相加

import pandas as pd
import numpy as np

df1 = pd.DataFrame({
    'a': range(5),
    'b': range(3,8),
    'c': range(5, 10)
    })

df2 = pd.DataFrame({
    'a': range(5),
    'b': range(2,7),
    'c': range(15, 20)
    })
df2.iloc[1,1] = np.nan

# 对应位置数值相加
df1.add(df2)
df1.add(df2, fill_value=3)
df1 + df2

2.其他

import pandas as pd
df = pd.DataFrame({'angles': [0, 3, 4],
                   'degrees': [360, 180, 360]},
                  index=['circle', 'triangle', 'rectangle'])

# 相加
df + 1
df.add(1)

# 相减
df.sub(1)
df - [1,2] # 按列相减
df.sub([1,2], axis='columns')
s = pd.Series([1, 2, 3], index=['circle', 'triangle', 'rectangle'])
df.sub(s, axis='index') # 按行相减

# 相除
df.div(10)
df.div(df_multindex, level=1) #针对多重索引 少见

# 被除
df.rdiv(10)

# 相乘
other = pd.DataFrame({'angles': [0, 3, 4]},
                     index=['circle', 'triangle', 'rectangle'])
df * other # 空的列结果为空
df.mul(other, fill_value=10) # 空值补充

# 幂
df.pow(2)

# 求余
df.mod(3)

参考链接:pandas.DataFrame.add

参考链接:Python—Pandas学习之【DataFrame.add函数】

posted @ 2022-08-30 15:35  Hider1214  阅读(2166)  评论(0)    收藏  举报