打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Matlab数据类型—多维数组、元胞、字符、文本与结构体

1.多维数组

p = perms(a)表示产生a中的所有全排列矩阵,例如:

简单应用:将一个4阶幻方矩阵进行全排列,共有4!=24种方案:

A = magic(4);M = zeros(4,4,24);p = perms(1:4);for k = 1:24 M(:,:,k) = A(:,p(k,:));end

将24个幻方矩阵存储在了三维数组M中,M的大小为4*4*24。

sum(M,d)通过改变第d个下标来计算总和

sum(M,1)得到一个1*4*24的数组

sum(M,2)得到一个4*1*24的数组

sum(M,3)表示将24个矩阵块对应位置求和,得到一个4*4*1的数组,相当于4*4的矩阵

2.元胞数组

特点:

1.可以存储大小不同的矩阵序列

2.检索内容时,使用大括号下标进行索引,A{1}

3.包含其他数组的副本,而不包含指向这些数组的指针,即修改原值,元胞里的内容不变

注意()索引与{}索引的区别!!!

3.字符文本

S = ‘Hello Matlab’          S的大小为1*12的字符数组

a = double(S)    转化为ASCII码

字符的串联:

垂直连接时两个单词的长度必须相同!!!!

包含不同长度的字符:

创建字符数组时,数组各行的长度必须相同(使用空格填充较短行的末尾)char 函数可执行这种填充操作!!!

不需要任何填充的 5×1 元胞数组,该数组的各行可以具有不同的长度!!!

cellstr()  将填充后的字符数组转换为字符向量元胞数组:

char()进行逆操作!!

4.Matlab中的结构体

结构体是多维 MATLAB 数组,包含可按文本字段标志符访问的元素。

结构体也为数组,因此也可以插入其他元素:

注意:上式70写错了,没有单引号,因为是数字,不加单引号,加上后就变成了字符了!!!

结构体的索引:

s.score 与 s(1).score,s(2).score,s(3).score表达效果相同

要根据某个文本字段(例如,name)创建字符数组,可调用 char 函数:

括入大括号中,可以根据 name 字段创建元胞数组:

要将结构体数组的每个元素的字段赋值给结构体外部的单独变量:

结构体数据的访问:

最常用方法是指定要引用的字段的名称;

另一种方法是使用动态字段名称:

动态字段名称将字段表示为变量表达式,MATLAB 会在运行时计算这些表达式。例如将 expression 作为动态字段名称的写法:

structName.(expression)

使用标准 MATLAB 索引语法创建此字段的索引。例如,要在字段名称中计算 expression,并在第7行的 1 至 25 列获取该字段的值:

structName.(expression)(7,1:25)

动态字段名称示例-  下面显示的 avgscore 函数可用于计算考试的平均分数,并使用动态字段名称检索 testscores 结构体中的信息:

function avg = avgscore(test, student, first, last)for k = first:last   scores(k) = test.(student).week(k);endavg = sum(scores)/(last - first + 1);

您可以运行此函数,并对动态字段 student 使用不同值。首先,对包含 10周内的分数的结构体进行初始化:

test.Ann.week(1:25) = [95 89 76 82 79 92 94 92 89 81]; test.King.week(1:25) = [87 80 91 84 99 87 93 87 97 87];

在,运行 avgscore,并在运行时使用动态字段名称为 testscores 结构体提供学生姓名字段:

avgscore(test, 'Ann_Lane', 7, 22)avgscore(test, 'William_King', 7, 22)

参考:Matlab官方文档

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
VF试题
Matlab数据&数组类型详解(5)结构数组
《Access数据库应用》第3章 创建与使用表
matlab之元胞数组
VFP命令、函数及程序语句大全
第三章 VFP数据库(表)的概念及操作
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服