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???? 1????1???? 1???? 1
4???? 4????4???? 4???? 4
7???? 7????7???? 7???? 7
repmat(B(:,1),2,5)????? %將B(:,1)復制成'2×5'的矩陣
ans =
1? ???1????1???? 1???? 1
4???? 4????4???? 4???? 4
7???? 7????7???? 7???? 7
1???? 1????1???? 1???? 1
4???? 4????4???? 4???? 4
7???? 7????7???? 7???? 7
其結果變?yōu)?*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
總結
以上是生活随笔為你收集整理的matlab矩阵除以一个数字,matlab矩阵中每一行数除以一个数 | 学步园的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: get_digits
- 下一篇: matlab绘制烟花,[原创]利用MAT