numpy.outer

在numpy中,numpy.outer函数用于计算两个数组的外积。外积是两个向量的乘积,返回的是一个新的数组,数组的形状是两个输入数组形状的乘积。
语法
numpy.outer(a, b, out=None)
参数:
a: 输入数组ab: 输入数组bout: 可选参数,用于指定结果数组的存储位置
返回值:
- 外积数组
示例
下面我们通过一个示例来演示numpy.outer函数的用法:
import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
result = np.outer(a, b)
print(result)
运行上面的代码,将得到输出:
[[ 4 5 6]
[ 8 10 12]
[12 15 18]]
在这个示例中,数组a和数组b的外积计算结果是一个3×3的数组。具体计算过程如下:
1*4 1*5 1*6
2*4 2*5 2*6
3*4 3*5 3*6
外积的计算公式
两个数组a和b的外积可以表示为以下公式:
a = [a1, a2, ..., am]
b = [b1, b2, ..., bn]
np.outer(a, b) = [[a1b1, a1b2, ..., a1bn],
[a2b1, a2b2, ..., a2bn],
...,
[amb1, amb2, ..., ambn]]
自定义结果数组的形状
如果想要将外积结果存储在自定义形状的数组中,可以使用out参数指定结果数组的形状。下面是一个示例:
import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
result = np.zeros((6, 2)) # 自定义形状为6x2的数组
np.outer(a, b, out=result)
print(result)
运行上面的代码,将得到输出:
[[ 4. 5.]
[ 8. 10.]
[12. 15.]
[ 0. 0.]
[ 0. 0.]
[ 0. 0.]]
在这个示例中,我们将外积结果存储在一个自定义形状为6×2的数组中。
总结
numpy.outer是一个非常实用的函数,用于计算两个数组的外积。外积结果的形状由输入数组的形状决定,可以通过out参数来指定结果数组的形状。通过灵活运用numpy.outer函数,可以方便地进行数组计算,节省时间和代码量。
极客教程