2013-11-04 139 views
0

我必须创建50-100个多维矩阵(这些矩阵的矩阵包含大约7个矩阵,维数为25 * 10)。我想存储它们,以便我可以遍历它们并操作它们的条目。既然我已经读过,将矩阵的名称与数字和eval()连接起来并不是一个好主意,我想我可以将它们全部存储在一个单元格数组中。但是后来我读到,如果矩阵只包含数字和没有字符串,则不应使用单元阵列,因为与矩阵相比,它们的处理速度较慢。 现在我希望你能告诉我如何处理一个决定。Matlab:单元阵列或多个多维矩阵(迭代)

回答

1

如果所有矩阵的大小相同,最好使用4D矩阵,大小为25x10x7x100。你说“约7”:这个数字对于所有的3D矩阵都是一样的吗?如果不是,我认为单元阵列是正确的方法。

当您要存储的矩阵不是全部相同大小时,需要使用单元阵列,因此无法存储(至少不容易)到更高维矩阵中。

0

你的问题有点不清楚,但这里的解决您的quandery尝试:

电池阵列允许你存储“混合”数据 - 一个字符串,另一个矩阵,等等。因为你说的关于不同“单元格”中的不同矩阵(大小,数量),单元阵列是存储它们的完全合理的方式。但是如果矩阵的大小相同,那么将它们存储在单个矩阵中(具有额外的维度)会更好。实际上,当矩阵本身很大时,低效率的开销很小 - 与访问所有250个元素的时间相比,“调用”一个矩阵需要的时间很少,等等。