python矩阵运算,对矩阵每一行乘以不同的系数
比如先随机创建一个3x3的矩阵:
import numpy as np
A=np.arange(1,10).reshape(3,3)
print(A)
假设要实现第一行乘以1,第二行乘以2,第三行乘以3
实现过程如下:
a=np.array([1,2,3]) # 先创建[1,2,3]数组
F=np.empty(shape=[0,len(a)]) # 创建空矩阵
m=0 # 利用矩阵索引取矩阵每一行元素,初值为0
for i in range(len(a)): # 循环次数len(a),因为只有三行,乘三次
f=A[m,:]*a[m] # 对矩阵A第0行所有元素乘以a【0】中的值
F=np.vstack((F,f)) # 按行合并矩阵,利用空矩阵实现第一次迭代
m=m+1 # 行索引+1
print(F) # 查看结果
可以发现,实现功能,矩阵第一行乘以1,第二行乘以2,第三行乘以3