ddgw.net
当前位置:首页 >> mAtlAB取矩阵的一部分 >>

mAtlAB取矩阵的一部分

a=zeros(5,5)b=a(3:5,4:5)%取a的(3-5行,4-5列)b为所取

使用a(M,N)可以提取矩阵a中符合M,N要求的部分 最简单是M,N都是标量,就是一个数例如 a(1,1) a(2,3)分别返回a矩阵1行1列的单元 和 2行3列的单元 M,N还可以是矢量,例如 a([1 2 3 4],[2 3]) 返回 1 2 3 4行 2 3 列的数据 这里还有通配的技巧,例

你这有4个随机,x,y各随机然后在矩阵中取子矩阵又是个随机,这个x列组成的新矩阵是从A中哪一列开始计算,是调着取还是连续

比如A是一个4*4的矩阵,你想取出第2~3行,第3~4列的数据,用下面的命令即可:A = 1:16; A = reshape(A,4,4)' B = A(2:3,3:4)结果如下:A = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 B = 7 8 11 12

提取子矩阵的具体方法是 B=A(v1,v2),其中,v1表示子矩阵要保留的行号构成的向量,v2表示要保留的列号构成的向量.举例说明:>>A=[1,2,3;4,5,6;7,8,9];>>B1=A(1:2:end,:) B1 = 1 2 3 7 8 9>> B2=A([3,2,1],[1,1,1]) B2 = 7 7 7 4 4 4 1 1 1>>B3=A(:,end:-1:1) B3 = 3 2 1 6 5 4 9 8 7

B = A(1:3, 1:2)即使提取的行列不连续或者次序需要颠倒也可以写成诸如A([1,3,6], [4,3,1,5])这样的形式

比如矩阵A是10行10列的,提取A的第3行为A(3,:),提取A的第3列为A(:,3)>> a=[1 2 3;4 5 6;7 8 9]a = 1 2 3 4 5 6 7 8 9>> a(1:2,3)ans = 3 6>> a(1:1,2)ans = 2

用for循环

总体思路:设定筛选条件,将数组中符合条件的元素筛选出来(可以筛选出元素值也可以筛选出元素对应的下标),然后将元素值赋值给另外一个数组的元素

如何用matlab提取矩阵的一列 使用a(M,N)可以提取矩阵a中符合M,N要求的部分 最简单是M,N都是标量,就是一个数例如 a(1,1) a(2,3)分别返回a矩阵1行1列的单元 和 2行3列的单元 M,N还可以是矢量,例如 a([1 2 3 4],[2 3]) 返回 1 2 3 4行 2 3 列的数据

artgba.com | sbsy.net | qmbl.net | dbpj.net | gpfd.net | 网站首页 | 网站地图
All rights reserved Powered by www.ddgw.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com