matlab中矩阵怎么让不同行乘以不同数,要用matlab的自带函数
1个回答
展开全部
%假设有以下的矩阵A
A=[1 2 3;
4 5 6;
7 8 9];
%我们需要第一行乘以1,第二行乘以2,第三行乘以3
B=[1;
2;
3];
%B是一个列向量,存放没一行需要乘以的数
%先根据A的列数将B复制成和A大小一样的矩阵([1 1 1;2 2 2;3 3 3])
%然后再和A对应位置的元素相乘,就可以得到想要的结果C
C=A.*repmat(B,[1,size(A,2)]);
结果如下
A =
1 2 3
4 5 6
7 8 9
B =
1
2
3
C =
1 2 3
8 10 12
21 24 27
还有一个更简单的办法
C=diag(B)*A;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询