matlab中矩阵怎么让不同行乘以不同数,要用matlab的自带函数
答案:1 悬赏:0 手机版
解决时间 2021-03-24 23:24
- 提问者网友:暗中人
- 2021-03-24 01:25
matlab中矩阵怎么让不同行乘以不同数,要用matlab的自带函数
最佳答案
- 五星知识达人网友:深街酒徒
- 2021-03-24 02:06
%假设有以下的矩阵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;
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;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯