Aus*_*vis 5 matlab matrix dataset cell-array data-structures
我是matlab的新手,我试图找出何时最好使用单元格,表格或矩阵来存储数据集,然后处理数据.
我想要的是存储包含多个行,包括字符串和数字,然后想要使用数字的数据.
例如,一条线看起来像
'string 1' , time, number1, number 2
Run Code Online (Sandbox Code Playgroud)
.我知道如果元素是数字,矩阵效果最好,但是当我使用单元格时,我不得不将数字或字符串转换为矩阵才能使用它们.我正在运行matlab 2012所以也许这是问题的一部分.任何帮助表示赞赏.谢谢!
小智 2
在以下情况下使用矩阵:
double,或整数int32);在以下情况下使用元胞数组:
结构的参数相同,只是索引是按名称而不是数字。
不确定表格,我认为语言本身没有提供;可能是一个我不知道的UDT......
稍后编辑
这三种类型可以组合,从某种意义上说,元胞数组和结构体可以具有矩阵以及元胞数组和结构体作为元素(因为它们是异构容器)。对于您的情况,您可能有两种方法,具体取决于您需要如何访问数据:
如果您主要按行访问数据,那么就性能而言,具有 4 个字段(每列一个字段)的 N 个结构体(每行一个结构体)的数组将是最有效的;
如果您主要按列访问数据,那么具有 4 个字段(每列一个字段)的单个结构就可以了;第一个字段将是第一列的字符串元胞数组,第二个字段将是字符串元胞数组或双精度数的一维矩阵,具体取决于您要如何存储日期,其余字段是 s 的一维矩阵double。