Matlab中矩阵数据存取的N种方式
1、方法一,用冒号“:”一次性取矩阵中的所有元素,这在对矩阵所有元素求和时很有用,求矩阵的最大最小值等时很有用,只需调一次相应的函数:
clc
a1=1:6
A=reshape(a1,2,[])
a2=A(:)
sA1=sum(sum(A))
sA2=sum(A(:))
maxA1=max(max(A))
maxA2=max(A(:))
执行结果可以看出,matlab中矩阵是按列存,与C语言中的数组不同。


2、方法二,用冒号加数字存取指定区域元素:
clc
a1=1:16
A=reshape(a1,4,[])
subA1=A(2:4,1:3)

3、方法三,巧妙利用end关键词,获取某维最后位置的元素:
clc
a1=1:12
A=reshape(a1,3,[])
last=A(end)
subA1=A(2:end,3:end)

4、方法四,获取多个指定位置的数:
clc
a1=1:12
A=reshape(a1,3,[])
eles=A([1 4 5 6 9 end])

5、方法五,巧妙用真值矩阵获取满足一定条件的数据:
clc
a1=1:12
A=reshape(a1,3,[])
mask1=A>6
eles1=A(mask1)

6、方法六、巧妙利用find函数:
clc
a1=1:9
A=reshape(a1,3,[])
ind=find(A>5)
eles1=A(ind)

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:146
阅读量:74
阅读量:32
阅读量:119
阅读量:23