【MATLAB】矩阵信息的获取

news/2024/7/3 3:39:01

1、矩阵结构

矩阵的结构是指矩阵子元素的排列方式。

函数名称函数功能
isempty(A)检测矩阵是否为空
isscalar(A)检测矩阵是否是单元素的标量矩阵
isvector(A)检测矩阵是否是只具有一行或一列元素的一维向量
issparse(A)检测数组是否是系数矩阵

返回1表示该矩阵是某一特定类型的矩阵,返回0则表示不是。

2、矩阵大小

包括:矩阵的维数;矩阵各维(例如最长维,用户指定的维);矩阵元素的个数。

函数调用格式描述
ndimsn=ndims(X)获取矩阵的维数
size[m,n]=size(X)获取矩阵各维上的长度
lengthn=length(X)获取矩阵最长维的长度
numeln=numel(X)

获取矩阵元素的个数

size函数的返回值可以是分开显示的单个实数变量,也可以是一个行向量。

在size函数的输入参数中增加维度参数可以获取指定维度的长度,其中“1”表示行,“2”表示列 

>> A=eye(5,3)A =1     0     00     1     00     0     10     0     00     0     0>> ndims(A)ans =2>> length(A)ans =5>> [m,n]=size(A)m =5n =3>> d=size(A)d =5     3>> e1=size(A,1)e1 =5>> e2=size(A,2)e2 =3>> numel(A)ans =15

3、矩阵维度

对于空矩阵、标量矩阵、一维矩阵、二维矩阵,MATLAB都将其作为普通的二维数组对待。

需要特别注意的是:用[ ]产生的空矩阵是作为二维矩阵的。

>> a=[];b=5;c=1:3;d=magic(2);e(:,:,2)=[1,2;3,4];
>> Ndims = [ndims(a),ndims(b),ndims(c),ndims(d),ndims(e)]Ndims =2     2     2     2     3

4、矩阵的数据类型

矩阵作为MATLAB的内部数据储存和运算结构,其元素可以是各种各样的数据类型(数值,字符串,元胞,结构体等)

矩阵数据类型的测试函数
函数名称函数功能
isnumeric检测矩阵元素是否为数值型变量
isreal检测矩阵元素是否为实数数值型变量
isfloat检测矩阵元素是否为浮点数值型变量
isinteger检测矩阵元素是否为整数型变量
islogical检测矩阵元素是否为逻辑型变量
ischar检测矩阵元素是否为字符型变量
isstruct检测矩阵元素是否为结构体型变量
iscell

检测矩阵元素是否为元胞型变量

iscellstr检测矩阵元素是否为结构体的元胞型变量

5、矩阵占用的内存

了解矩阵占用内存情况,对于优化MATLAB代码性能十分重要。

可以通过whos查看当前工作区中指定变量的所有信息,(变量名,矩阵大小,内存占用,数据类型)


http://lihuaxi.xjx100.cn/news/252341.html

相关文章

《HTML5游戏编程核心技术与实战》——2.8 小结

本节书摘来自异步社区《HTML5游戏编程核心技术与实战》一书中的第2章,第2.8节,作者: 向峰 更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.8 小结 本章介绍了canvas的一些常用的操作,作为HTML5的最重要的特性,canvas使得…

eclipse 出现user operation is waiting

project->properties->Builders 将带有 validator的选项全部去掉,然后保存一切就ok了。 转载于:https://www.cnblogs.com/fengnan/p/10276162.html

阿里AI破纪录超人类;世界杯的火眼睛睛,伤了多少人的心;天才黑客决定给马斯克打工12周...

本周,又有哪些AI新鲜事?产业界阿里AI打破中文语言理解榜单纪录,首次超越人类成绩今天,在最新的中文语言理解领域权威榜单CLUE中,阿里AI以86.685的总分成绩创造新纪录。这是该榜单诞生近三年以来,AI首次超越…

如何解决资料下载下来为index.html和PHP文件的问题?

最近很多Down友反映,在下载中心下载资料时,明明是pdf、rar、zip格式的文件,下载完后怎么就变成index.html、php格式的文件了?既浪费了下载豆,文件还不能用,心疼啊!这是因为下载系统是动态获取的…

深圳杯---垃圾焚烧厂的经济补偿问题

垃圾围城是世界性难题,在今天的中国显得尤为突出。2012年全国城市生活垃圾清运量达到1.71亿吨,比2010年增长了1300万吨。数据显示,目前全国三分之二以上的城市面临垃圾围城问题,垃圾堆放累计侵占土地75万亩。因此,垃圾…

[ASP.NET4之旅]Circular file references are not allowed

将ASP.NET 2.0的项目升级到ASP.NET 4后&#xff0c;用VS2010编译站点&#xff0c;某些控件出现编译错误“Circular file references are not allowed”&#xff0c;比如&#xff1a; <% Control Language"C#"ClassName"NewsRight"%>解决方法&#xf…

安装 Fedora 22 后要做的事情

Red Hat操作系统的社区开发版的最新成员Fedora 22&#xff0c;已经于2015年5月26日发布了。对这个经典的Fedora发行版的发布充斥着各种猜测和预期&#xff0c;而最终Fedora 22推出了许多重大变化。 就初始化进程而言&#xff0c;Systemd还是个新生儿&#xff0c;但它已经准备好…

vue通信、传值

一、通过路由带参数进行传值 ①两个组件 A和B,A组件通过query把orderId传递给B组件&#xff08;触发事件可以是点击事件、钩子函数等&#xff09;this.$router.push({ path: /conponentsB, query: { orderId: 123 } }) // 跳转到B②在B组件中获取A组件传递过来的参数this.$rout…