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 列的数据
这里还有通配的技巧,例如
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矩阵行倒序和列倒序的矩阵

总之matlab通过的下标提取矩阵部分是很灵活的

假设你要提取矩阵a第n列的数据,使用a(:,n)就可以了
如果是要提取第n列前10个数据使用a(1:10,n)就可以了
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-31

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

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

    MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。


    MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

    MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。

本回答被网友采纳
第2个回答  2016-12-05
矩阵是A,取3、 5、 7行的话: A1=A([3,5,7],:);
相似回答