Matlab 之 数据元素访问

Posted anzhiwu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matlab 之 数据元素访问相关的知识,希望对你有一定的参考价值。

Matlab的含义是矩阵实验室,其特征之一就是数据的向量化操作,借此提升软件运行效率。那么,必然会涉及数据元素的访问。Matlab主要支持下面一些形式的访问:

(1)array-inde: A(i)

(2)cell-index: C{i}

(3)struct field: S.fieldname

不同的访问方式,效率差别很大,我们以单个元素或者域的访问为例,探讨不同的数据结构的访问时间。

一百万次访问的平均时间对比:

(1)array-index: 0.002675s

(2)cell-index: 0.1311

(3)struct field: 0.002250s

从中我们可以发现,array-index与struct field访问的方式速度差不多,可以达到约每秒4亿次,但cell-index的访问方式则明显变慢,速度为约每秒760万次,大约慢了50倍。

因此,如若可能,在实验中,我们还是应该尽量采用向量化,或者结构体来定义数据结构,从而加快运行速度。

 

以上是关于Matlab 之 数据元素访问的主要内容,如果未能解决你的问题,请参考以下文章

matlab暂时未解的问题

Matlab中元胞数组与构架数组有啥不同?

sub2ind的函数简介

MatLab数据结构

Matlab随笔之矩阵入门知识

matlab中怎么在数组找一个元素