numpy.add()函数全面解析:实现数组与标量高效加法运算

numpy 是 Python 中用于数值计算和数据分析的强大库,提供了大量的数学函数和高效的数据结构。其中,numpy.add() 函数用于执行两个数组之间的元素级加法操作,或者将一个数组与一个标量相加。以下是关于 numpy.add() 函数的详细说明:

函数签名与参数

numpy.add(arr1, arr2, out=None, where=True, **kwargs)
  • arr1: 输入的第一个数组或标量。可以是 numpy.ndarray 或兼容的数据类型,如整数、浮点数等。
  • arr2: 输入的第二个数组或标量。与 arr1 类型相同或可以进行广播运算。
  • out: 可选参数,指定输出数组。如果提供,计算结果将直接存入此数组,且其形状必须能与经过广播后的输入数组相匹配。如果不提供或设置为 None,函数会创建并返回一个新的 ndarray 作为结果。
  • where: 可选布尔型数组,大小与输入数组相匹配或可以进行广播。值为 True 的位置执行加法运算;值为 False 的位置,结果数组中对应的元素保持原样不变。
  • **kwargs: 允许传递其他关键字参数。通常在 numpy 版本更新时可能会引入新的功能,使用 **kwargs 可以确保函数在未来兼容可能增加的参数。

基本用法

数组间的加法

当 arr1 和 arr2 都是数组时,add() 函数会在对应位置上对它们的元素进行逐个相加:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

result = np.add(arr1, arr2)
print(result)
# 输出: array([5, 7, 9])

数组与标量的加法

若其中一个输入是标量,另一个是数组,add() 会将标量值加到数组的每个元素上:

import numpy as np

arr = np.array([1, 2, 3])
scalar = 4

result = np.add(arr, scalar)
print(result)
# 输出: array([5, 6, 7])

使用 out 参数

如果希望将结果直接写入已存在的数组,可以提供 out 参数:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
output = np.zeros_like(arr1)

np.add(arr1, arr2, out=output)
print(output)
# 输出: array([5, 7, 9])

使用 where 参数

where 参数可以控制加法运算在哪些位置执行。例如,仅在满足特定条件的位置进行加法:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
mask = np.array([True, False, True])

result = np.add(arr1, arr2, where=mask)
print(result)
# 输出: array([5, 2, 9])  # 第一个和第三个元素相加,第二个元素不变

总结

numpy.add() 函数是 numpy 库中用于执行数组间或数组与标量间加法运算的核心工具。它支持广播机制、提供灵活的输出控制选项,并可以通过 where 参数实现条件加法。利用这些特性,numpy.add() 能够有效地服务于各种数值计算任务,尤其是在大规模数据处理和科学计算领域。


存档地址:https://www.yuque.com/worthstudy/study/ig04ifx9gp0pipi0?singleDoc# 《numpy.add()函数》

© 版权声明
THE END
喜欢就点赞支持一下吧,如果觉得不错或日后有所需要,可以收藏文章和关注作者哦。
点赞0打赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容