关于MATLAB table数据结构的分析介绍

matlab常用基本数据类型有:整型,浮点型,字符型,函数句柄,元胞数组和结构体数组。除了这些基本数据类型,matlab还有很多其它的数据类型不为人熟悉,这些数据类型在编程中也非常有用。matlab高级数据类型系列旨在向大家介绍它们:比如containers.map,tables,enumeration和time series等等,它们为什么有用,用来解决什么问题,并且怎样在科学工程计算中怎么使用。上篇我们提到了映射表结构(containers.map)。本篇将介绍另一中新的matlab数据类型--table。
table简介
为什么需要table数据结构
mathworks在matlab r2013b中引入了一种新的数据结构叫做table。table类似统计工具箱中的dataset,其引入的目的就是用来取代dataset的数据类型。因为表状的数据在工程计算中越来越长久,有了table类型,matlab用户就可以不用购买统计工具箱,也能使用表状的数据结构了。table本质上来说是一种可以存放各种数据类型的容器,比如下面表table.1中的数据,其中既有字符型,又有数值类型,其中第一行作为表头:symbol,name,market,cap,ipo, year 是各列的名字。
table.1 nasdaq股票名称表
在conatiners.map的章节中,我们介绍了matlab的基本数据类型(比如数组,原胞数组和结构体)在表达某些复杂数据类型时的局限性。这里不再一一赘述,读者只需要认识到:数组的局限性在于不能用来存放数值以外的数据,而使用元胞读取和索引内容时有种种不方便,比如无法区分该数据中的表头和其余的行数据。事实上,如果数据存放在如下的csv文件中,并且用importdata直接读取csv文件。
显然这不是我们所期待的要导入格式。
通过导入数据构造table对象
沿用上一步的cvs文件,我们可以使用readtable函数,构造一个新的table对象,把csv文件中的数据导入到该对象中。readtable函数接受文件名称作为输入,返回一个table对象。
注意第2行的warning,因为readtable函数把nasdaq.csv中的第一行自动变成了这个table的表头,在创建table对象的时候,matlab会对做表头的文字做处理,这里把market cap和ipo year两个词中的空格去掉,缩成一个词,这样做是为了方便将来使用dot语法来访问表中的数据。因为matlab修改了原来的表头,所以这里给出了warning。
调用table构造函数来构造table对象
通过转换函数构造table对象
访问table中的数据

ATM网络结构和接口
扫地机器人的设计都将面临着什么样的挑战
使用身份验证器的智能锁的使用和性能
得一微电子携YS9201等新品亮相COMPUTEX 2018
我的华为玩机技巧携手晤对科技,共探创意玩法与新可能
关于MATLAB table数据结构的分析介绍
常州坤维机器人应用传感器
串口传输速率低于波特率会怎么样 串口传输速率低于波特率的原因
两艘 “龙”飞船同时与国际空间站对接
CES 2023亮点 鸿利显示马瑞利联合研发的Mini LED超清车载大屏全球首发
低功耗蓝牙遥控器
无刷直流电机的工作原理与基本组成
苹果加快推进MicroLED屏的商用
康佳电视战场将汇集OTT将推5G电视
小米5“全功能NFC”:全终端公交卡率先登录深沪两地
智能家电市场快速兴起,半导体供货紧张,我国功率半导体行业迎来新机遇
如何推进DNA存储的开发与商业化应用?
国家把人工智能教育提升到战略层面 机器人教育开始走进课堂
过压保护是什么 两款过压保护电路设计介绍
2018世界智能制造及中国智能制造的十大科技进展