matlab矩阵取一部分数据

如题所述

matlab中取一个矩阵的一部分方法如下:

格式A(m,n),用于提取矩阵A中符合m,n要求的部分

1、提取某个元素,则m,n为数字标量,如A(2,3)为第二行第三列的元素。

2、提取某行某列

A(:,n)提取第n列的所有元素,如A(:,3)提取第三列的所有元素;

A(m,:)提取第m行的所有元素,如A(3,:)提取第三行的所有元素;

3、提取任意的某部分并重新组成新的矩阵,连续或不连续,单调或不单调

数字指定:A([1 2 3 4],[2 3]) 返回1 2 3 4行2 3 列的数据;

步长指定:A(1:2:end,:) A(2:2:end,:)分别提取矩阵A的奇数行和偶数行数据;

A(end:-1:1,:) A(:,end:-1:1)分别返回A矩阵行倒序和列倒序的矩阵

变量指定:A(B(:,1),:),其中B的第一列含有数据,用来指定取矩阵A的哪些行。

4、变量指定,假设一个矩阵X1中存储的是坐标,用矩阵X1的坐标访问矩阵labels_left中对应的元素:

for i = 1:size(X1,1)

x = labels_left(X1(i,2),X1(i,1));%匹配对1在左图中的label数

end

扩展资料:

matlab中取一个矩阵的一部分的用法:

1、提取大矩阵的一列、一行元素:

一列元素:  A(:,j)表示提取A矩阵的第j列全部元素

一行元素:  A(i,:)表示提取A矩阵的第i行元素,

于是我们有,A(i, j)表示提取A矩阵的第i行第j列的元素。

2、提取多行多列元素

多行元素:  A(i:i+m,:)表示提取A的第i行到第i+m行的元素。

多列元素:  A(:,j:j+n)表示提取A的第j列到第j+n列的元素。

提取块:     A(i:i+m, j:j+n)表示的是mxn的一个子块的元素。

参考资料:

百度百科-matlab

温馨提示:答案为网友推荐,仅供参考
相似回答