【Pandas】pandas DataFrame radd

Pandas2.2 DataFrame

Binary operator functions

方法 描述
DataFrame.add(other) 用于执行 DataFrame 与另一个对象(如 DataFrame、Series 或标量)的逐元素加法操作
DataFrame.add(other[, axis, level, fill_value]) 用于执行 DataFrame 与另一个对象(如 DataFrame、Series 或标量)的逐元素加法操作
DataFrame.sub(other[, axis, level, fill_value]) 用于执行逐元素的减法操作
DataFrame.mul(other[, axis, level, fill_value]) 用于执行逐元素的乘法操作
DataFrame.div(other[, axis, level, fill_value]) 用于执行逐元素的除法操作
DataFrame.truediv(other[, axis, level, ...]) 用于执行逐元素的真除法操作
DataFrame.floordiv(other[, axis, level, ...]) 用于执行逐元素的地板除法操作
DataFrame.mod(other[, axis, level, fill_value]) 用于执行逐元素的取模操作
DataFrame.pow(other[, axis, level, fill_value]) 用于对 DataFrame 中的元素进行幂运算
DataFrame.dot(other) 用于计算两个 DataFrame(或 DataFrame 与 Series/数组)之间的**矩阵点积(矩阵乘法)**的方法
DataFrame.radd(other[, axis, level, fill_value]) 用于执行反向加法运算

pandas.DataFrame.radd()

pandas.DataFrame.radd 方法用于执行反向加法运算。具体来说,它相当于调用 other + self,其中 self 是调用该方法的 DataFrame。以下是该方法的参数说明及其功能:

参数说明
  • other: 用于进行加法运算的值,可以是标量、序列、DataFrame 或字典。
  • axis : 指定沿哪个轴进行运算。0'index' 表示沿行进行运算,1'columns' 表示沿列进行运算。默认为 1
  • level : 如果 other 是一个 MultiIndex,则指定沿哪个级别进行运算。默认为 None
  • fill_value : 用于填充缺失值的值。默认为 None
示例及结果
示例 1: 使用标量进行反向加法运算
python 复制代码
import pandas as pd

df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6],
    'C': [7, 8, 9]
})

print("原始 DataFrame:")
print(df)

result = df.radd(10)
print("\n反向加法后的 DataFrame (使用 radd 并指定标量 10):")
print(result)

结果:

复制代码
原始 DataFrame:
   A  B  C
0  1  4  7
1  2  5  8
2  3  6  9

反向加法后的 DataFrame (使用 radd 并指定标量 10):
    A   B   C
0  11  14  17
1  12  15  18
2  13  16  19
示例 2: 使用序列进行反向加法运算
python 复制代码
import pandas as pd

df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6],
    'C': [7, 8, 9]
})

other = pd.Series([1, 2, 3])

print("原始 DataFrame:")
print(df)

result = df.radd(other, axis=0)
print("\n反向加法后的 DataFrame (使用 radd 并指定序列):")
print(result)

结果:

复制代码
原始 DataFrame:
   A  B  C
0  1  4  7
1  2  5  8
2  3  6  9

反向加法后的 DataFrame (使用 radd 并指定序列):
    A   B   C
0   2   5  8
1   3   7  10
2   4   8  12
示例 3: 使用 DataFrame 进行反向加法运算
python 复制代码
import pandas as pd

df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6],
    'C': [7, 8, 9]
})

other_df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6],
    'C': [7, 8, 9]
})

print("原始 DataFrame:")
print(df)

result = df.radd(other_df)
print("\n反向加法后的 DataFrame (使用 radd 并指定 DataFrame):")
print(result)

结果:

复制代码
原始 DataFrame:
   A  B  C
0  1  4  7
1  2  5  8
2  3  6  9

反向加法后的 DataFrame (使用 radd 并指定 DataFrame):
    A   B   C
0   2   8  14
1   4  10  16
2   6  12  18
示例 4: 使用字典进行反向加法运算
python 复制代码
import pandas as pd

df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6],
    'C': [7, 8, 9]
})

other_dict = {'A': 1, 'B': 2, 'C': 3}

print("原始 DataFrame:")
print(df)

result = df.radd(other_dict)
print("\n反向加法后的 DataFrame (使用 radd 并指定字典):")
print(result)

结果:

复制代码
原始 DataFrame:
   A  B  C
0  1  4  7
1  2  5  8
2  3  6  9

反向加法后的 DataFrame (使用 radd 并指定字典):
    A   B   C
0   2   6  10
1   3   7  11
2   4   8  12
解释
  1. 使用标量进行反向加法运算:

    • df.radd(10) 计算 DataFrame df 中的每个元素与标量 10 的加法。
    • 结果是一个新的 DataFrame,其中每个元素是 df 中的元素与 10 的和。
  2. 使用序列进行反向加法运算:

    • df.radd(other, axis=0) 计算 DataFrame df 的每一行与序列 other 的对应元素的加法。
    • 结果是一个新的 DataFrame,其中每个元素是 df 的每一行与 other 的对应元素的和。
  3. 使用 DataFrame 进行反向加法运算:

    • df.radd(other_df) 计算 DataFrame dfother_df 的对应元素的加法。
    • 结果是一个新的 DataFrame,其中每个元素是 dfother_df 的对应元素的和。
  4. 使用字典进行反向加法运算:

    • df.radd(other_dict) 计算 DataFrame df 的每一列与字典 other_dict 中对应键的值的加法。
    • 结果是一个新的 DataFrame,其中每个元素是 df 的每一列与 other_dict 中对应键的值的和。

这些示例展示了 DataFrame.radd 方法的不同用法及其效果。根据具体需求,可以选择合适的参数来进行反向加法运算。

相关推荐
IVEN_4 小时前
只会Python皮毛?深入理解这几点,轻松进阶全栈开发
python·全栈
Ray Liang5 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
AI攻城狮5 小时前
如何给 AI Agent 做"断舍离":OpenClaw Session 自动清理实践
python
千寻girling5 小时前
一份不可多得的 《 Python 》语言教程
人工智能·后端·python
AI攻城狮9 小时前
用 Playwright 实现博客一键发布到稀土掘金
python·自动化运维
曲幽9 小时前
FastAPI分布式系统实战:拆解分布式系统中常见问题及解决方案
redis·python·fastapi·web·httpx·lock·asyncio
孟健1 天前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
码路飞1 天前
写了个 AI 聊天页面,被 5 种流式格式折腾了一整天 😭
javascript·python
曲幽1 天前
FastAPI压力测试实战:Locust模拟真实用户并发及优化建议
python·fastapi·web·locust·asyncio·test·uvicorn·workers