700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > matlab矩阵除以一个数字 matlab矩阵中每一行数除以一个数 | 学步园

matlab矩阵除以一个数字 matlab矩阵中每一行数除以一个数 | 学步园

时间:2019-06-19 03:53:56

相关推荐

matlab矩阵除以一个数字 matlab矩阵中每一行数除以一个数 | 学步园

例如:用a中每一行数除以x中相对应的每一个数

x=[5 10 6 8 16 6 8 8 22 11];

a=[4 4 4 5 4 4 4 4 3 4

6 8 6 2 6 8 8 6 8 6

4 4 4 4 6 4 4 4 6 4

4 6 6 4 6 6 6 4 7 4

10 14 14 10 12 12 12 10 14 12

3 5 5 3 6 3 3 4 5 4

4 6 7 4 4 4 4 4 6 6

4 6 6 6 5 6 5 5 7 6

13 16 19 16 13 13 10 13 16 13

8 9 10 8 8 7 8 8 9 8

];

%a的第i行除以x的第i个数xa=repmat(x',[1 10]);

a=a./xa;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

函数repmat用法

B =repmat(A,m,n)B = repmat(A,[mn])B = repmat(A,[m np...])

这是一个处理大矩阵且内容有重复时使用,其功能是以A的内容堆叠在(MxN)的矩阵B中,B矩阵的大小由MxN及A矩阵的内容决定,如果A是一个3x4x5的矩阵,有B = repmat(A,2,3)则最后的矩阵是6x12x5。

例如:

B = [1 2 3;4 5 6;7 8 9]

B(:,1) % 取B矩阵的第1列

repmat(B(:,1),1,5) % 将B(:,1)复制成'1×5'的矩阵运算结果:

ans =

1 11 1 1

4 44 4 4

7 77 7 7

repmat(B(:,1),2,5) %将B(:,1)复制成'2×5'的矩阵

ans =

1 11 1 1

4 44 4 4

7 77 7 7

1 11 1 1

4 44 4 4

7 77 7 7

其结果变为6*5。A也可以置放文字串,如:>>C=repmat(' Long live the king!', 2,2)

运算结果:C =

Long live the king! Long live the king!

Long live the king! Long live the king!

也可置放其他的:>> D=repmat(NaN,2,5)

运算结果:D =

NaN NaN NaN NaN NaN

NaN NaN NaN NaN NaN

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。