matlab中如何提取矩阵?除了某行外的其他元素

2021-02-25 11:31:16 字数 4576 阅读 6864

1楼:讨厌穆婷婷

既可以用数bai组名跟圆括号du,行号,列号表示,zhi又可以用一dao个参数表示。版

如果不想影响权a,可以先用b存起a,然后对b操作,删除掉不要的行就可以了,a=magic(3);

一个参数表示时,matlab是列优先的.

1.matlab是美国mathworks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括matlab和simulink两大部分。

2.matlab和mathematica、maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。

matlab可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

matlab里面怎么提取一个行向量的某几列元素?

2楼:设计复杂

1、首先在电脑中打开matlab,命令行窗口输入a=[1 4 6;7 8 9] ,创建矩阵,如下图所示。

2、输入b=reshape(a,1,6),将a矩阵变成行向量,其中内1是1行,6是a矩阵的元素个数,如下图所示。

3、按回车键之后,可以看到a矩阵已经变成行向量了,如下图所示。

4、然后输入b=[a(1,:),a(2,:)],通过矩阵裁剪的方式,也可以将矩容阵变成行向量,如下图所示。

5、按回车键之后,可以看到变成行向量了,如下图所示就完成了。

3楼:赵文星空絮雨

a=[1 2 3 ; 4 5 6 ;7 8 9]a(3,1)

就提出了抄

第三行 第一列的元素 也就是 a(3,1) 得到的值是7。

matlab是美国mathworks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括matlab和simulink两大部分。matlab应用非常之广泛。

4楼:匿名用户

直接用元素去取就行

a= [1 1 2 2 3 3 4 4]

a([1 3 5] 就是你要的结果了

5楼:日向淳正

a = [1 1 2 2 3 3 4 4] 我想提取第1、3、5个元素

b=[1 3 5]

a(b)就好了

6楼:

我看了一下你的问题 我觉得你想要的应该是

a = [1 1 2 2 3 3 4 4]

a(1:2:5)

7楼:匿名用户

a = [1 1 2 2 3 3 4 4];

a([1,3,5,7]);

即可 。

matlab中怎么取一个矩阵的一部分

8楼:滟丽

1、打开matlab,在命令行窗口中输入a=[1 2 3 4;4 5 6 7;1 2 3 4],按回车键创建一个3行4列的矩阵。

2、如果我们想获取矩阵第2行第3列的数据,输入a(2,3)。

3、想获取矩阵第3列的第一个和第三个,输入a([1 3],3)。

4、想获取矩阵某列的连续数据,可以使用a(1:2,3),获取第3列第1个到第2个数据。

5、使用a(2:end,3)获取第3列,第2个到最后一个数据,根据需要获取矩阵数据即可。

9楼:ieio啊

matlab中要取一个矩阵的一部分,可以参考以下内容:

比如说有一个5×5的矩阵,想取它右下脚3*2的矩阵,应该用命令:

a=zeros(5,5)

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

b即为所取

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数

10楼:摩羯面对现实

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的一个子块的元素。

11楼:du瓶邪

比如原矩阵为a=[1 2 3;4 5 6;7 8 9;10 11 12],现在要生成b=[1 2;4 5;7 8],即提取了原来矩阵的1、2两列和1、2、3三行~

b = a(1:3, 1:2)

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

12楼:奔三不再二

matlab 矩阵

元素与子矩阵的提取

>> %矩阵元素的提取

>> a=[1 2 3;4 5 6;7 8 9;10 11 12]

a =1 2 3

4 5 6

7 8 9

10 11 12

>> a(3,1)%提取 a 矩阵第 3行,第 1列的元素

ans =

7>>>> %通过元素序号提取元素(矩阵元素序号与它的存储顺序是一一对应的! )

>> a(6)

ans =

5>> %matlab中矩阵元素按列存储,首先是第 1列,其次是第 2列 ......

>>>> %使用函数 find(c)查找符合条件的矩阵元素的行和列

>> %函数 find(c)的使用格式 [row,col]=find(c),c一般为逻辑表达式; row 返回满足条件的元 素的行号, col 返回满足条件的元素的列号。

>> a=[12 34 26 17 21;61 50 89 12 8;25 62 91 23 47]%查找 a 矩阵中大于等于 20、小于等于 60的元素。

a =12 34 26 17 21

61 50 89 12 8

25 62 91 23 47

>> [r,c]=find(a>=20&a<=60);

>> b=find(a>=20&a<=60);

>> disp('符合条件的矩阵元素的行号和列号:'),[r,c]

符合条件的矩阵元素的行号和列号:

13楼:匿名用户

a=zeros(5,5)

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

b为所取