如何用matlab提取一个矩阵的第一列和第三列?

提取的是第一列和第三列,而不是第一列到第三列
2024-11-17 02:55:45
推荐回答(3个)
回答1:

提取步骤如下:

1、首先,打开MATLAB命令行窗口,输入a
 = [1 2 3; 4 5 6; 7 8 9; 6 4 7]创建一个a矩阵,如下图所示,然后进入下一步。

     

2、其次,完成上述步骤后,输入a(1:2,1:3)以提取矩阵的第1,2行第1到3列,如下图所示,然后进入下一步。

     

3、接着,完成上述步骤后,按Enter键,可以看到矩阵的第1行和第2行的第1列到第3列已被提取,如下图所示,然后进入下一步。

     

4、然后,完成上述步骤后,输入a(2:3,1:2),以提取矩阵的第二至第三行第一至第二列,如下图所示,然后进入下一步。

     

5、最后,按Enter键,可以看到矩阵的第二到第三行的第一到第二列已被提取。方法学会了,就可以根据需要提取矩阵了,如下图所示。这样,问题就解决了。

     

回答2:

先来说你的问题,括号里面前面的代表行,:代表取所有的值,后面的是列

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

M,N还可以是矢量,例如

a([1 2 ],[2 3]) 返回 1 2 行 2 3 列的数据

还有通配的技巧,例如

a(1,:)就是返回a矩阵第一行的所有数据,等效于a(1,1:end)或a(1,1:size(a,2))

M,N矢量还可以是不连续的,不是单调的,或者有重复的,例如

a(1:2:end,:) a(2:2:end,:)分别提取矩阵a的奇数行和偶数行数据重新组成矩阵

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

假设你要提取矩阵a第n列的数据,使用a(:,n)就可以了

如果是要提取第2列前3个数据使用a(1:3,2)就可以了

回答3:

设你要提取的矩阵为a,则提取的第一列为a1=a(:,1);提取的第三列为a3=a(:,3);如果你要把它们合到一个矩阵只需要b=[a1,a3],b为合起来的矩阵。