MATLAB读取结构体中的数据 |
您所在的位置:网站首页 › 小小的我原唱歌词 › MATLAB读取结构体中的数据 |
近期做一个数据分析的文章,需要使用经典的近红外光谱数据集 corn NIR (网址: http://eigenvector.com/), 但是下载的数据是包含在一个数据集中,无法直接使用,需要进行数据读取,此时有以下学习收获: 1.在读取包含在结构体中的近红外光谱数据之前,需要知道所需数据在结构体内的名称,使用 fieldnames() 函数查看具体名称,以上述数据集为例,在MATLAB中演示为: >> fieldnames(m5spec) ans = 'name' 'type' 'author' 'date' 'moddate' 'imagesize' 'imagemode' 'data' 'label' 'axisscale' 'title' 'class' 'include' 'description' 'userdata' 'datasetversion' 'history'此时可以看到所需数据在该数据中的名称为“data”,其实此处完全可以双击结构体名就会显示结构体内部的具体信息,只是有的结构体设计不合理打开后超过显示范围导致无法显示,如果双击,则显示为: 这个就可以完全看到数据的大小,也知道所需数据的具体名称,下面需要对结构体数据进行提取; 2. 使用 getfield(m5spec, 'data'),获取数据。 一般需要加一个名称方便后续运算,如 DATA = getfield (m5spec, 'data')。即可获得所需数据。 ok,至此完成相关操作。 共同学习,共同进步! 2020年1月11日
|
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |