Advertisement

NumPy的广播机制(Broadcasting)

阅读量:

NumPy 广播(Broadcast)

Broadcast 是 numpy 用于处理不同形状数组执行数值运算的一种机制,通常对数组进行算术操作时,会作用于各个对应的元素之上。

当两个数组 a 与 b 的形状一致,即符合 a.shape == b.shape 的条件时,a*b 所得到的结果即为 a 和 b 数组中各对应位置元素的乘积。这一过程需要确保两者的维度数量相等,并且每个维度上的长度也保持一致。

实例

导入numpy库并定义数组a与b,其中a为[1,2,3,4],b为[10,20,30,40]。随后对两个数组进行逐元素相乘运算,将结果存储于c中,并输出c的值。

执行后的计算结果如下:

复制代码
    [ 10  40  90 160]
    

在进行数组运算时,若两个数组的形状存在差异,numpy 会自动启用广播功能以实现运算。例如:

实例

导入numpy库并定义数组a与数组b,随后执行加法运算并输出结果。具体代码如下:

import numpy as np
a = np.array([[ 0, 0, 0], [10,10,10], [20,20,20], [30,30,30]])
b = np.array([1,2,3])
print(a + b)

执行该代码后,将得到如下输出结果:

复制代码
 [[ 1  

全部评论 (0)

还没有任何评论哟~