提问者:小点点

独立地使用来自另一个数组的条目的多整数组


假设我有一个大小为2x1的数组和另一个大小相同的数组。 我想将第二个数组中的每个元素分别与第一个数组相乘,得到一个大小为4x1的数组。 假设我有以下数组:

my_array_1 = array([[1.],
                    [1.]])

my_array_2 = array([[5.],
                    [1.]])

因此,结果应如下:

result_array = array([[5.],
                     [5.],
                     [1.],
                     [1.]])

我知道用for循环迭代索引以获得结果数组,但是有没有更有效的方法例如NumPy函数调用?


共2个答案

匿名用户

查看numpy.kron:

In [35]: np.kron(my_array_2, my_array_1)                                        
Out[35]: 
array([[5.],
       [5.],
       [1.],
       [1.]])

匿名用户

这对我来说是最直截了当的:

>>> a1 = array([[5],[1]])
>>> a2 = array([1,2])
>>> (a1*a2).flatten()
array([ 5, 10,  1,  2])

但如果你真的想要你想要的,你应该接受沃伦的回答。