如何使用numpy将NxN矩阵H与Nx1数组t=[t1,t2,…,tN]相乘,从而使H*t=[H*t1,H*t2,…,H*tN]?

如何使用numpy将NxN矩阵H与Nx1数组t=[t1,t2,…,tN]相乘,从而使H*t=[H*t1,H*t2,…,H*tN]?,numpy,matrix,Numpy,Matrix,我知道如何使用for循环实现这一点,但是有没有办法使用numpy数组及其运算来实现这种类型的乘法?您可以使用np.multiply.outer: >>> import numpy as np >>> >>> H = np.arange(9).reshape(3, 3) >>> t = np.c_[10:40:10] >>> >>> H

我知道如何使用for循环实现这一点,但是有没有办法使用numpy数组及其运算来实现这种类型的乘法?

您可以使用
np.multiply.outer

>>> import numpy as np
>>> 
>>> H = np.arange(9).reshape(3, 3)
>>> t = np.c_[10:40:10]
>>> 
>>> H                                                                                                               
array([[0, 1, 2],                                                                                                   
       [3, 4, 5],                                                                                                   
       [6, 7, 8]])                                                                                                  
>>> t                                                                                                               
array([[10],                                                                                                        
       [20],                                                                                                        
       [30]])                                                                                                       
>>>                                                                                                                 
>>> np.multiply.outer(t.ravel(), H)
array([[[  0,  10,  20],                                                                                            
        [ 30,  40,  50],                                                                                            
        [ 60,  70,  80]],                                                                                           

       [[  0,  20,  40],                                                                                            
        [ 60,  80, 100],                                                                                            
        [120, 140, 160]],                                                                                           

       [[  0,  30,  60],                                                                                            
        [ 90, 120, 150],                                                                                            
        [180, 210, 240]]])                                                                                          

您要的是
nxn
矩阵吗?