【发布时间】:2015-12-17 10:53:30
【问题描述】:
将每个时间戳多行的 MATLAB 表缩减为每个时间戳只有一行的表,同时将其他值合并到这一行中的最快方法是什么? (参见:前后示例)
由于我必须处理大量数据,有没有办法并行执行此操作(parfor,...)?
之前:
Timestamp Value01 Value02 Value03
_________ _______ _______ _______
1001 01 02 []
1001 [] [] []
1001 [] [] 03
1002 [] [] 07
1002 [] 09 []
1003 04 01 []
1003 [] [] []
1004 05 06 08
之后:
Timestamp Value01 Value02 Value03
_________ _______ _______ _______
1001 01 02 03
1002 [] 09 07
1003 04 01 []
1004 05 06 08
【问题讨论】:
-
你没有说这个表是如何存储的——作为矩阵还是作为单元格?
-
@smlq 在 MATLAB 中有一个叫做
table的东西(从 2014b 左右开始),我猜他会使用它。矩阵是不可能的,因为它不支持空元素赋值[] -
是的,我使用的是matlab表格格式。
-
也许最好的办法是有一个嵌入代码的例子来创建这样一个表
-
请将您的
table示例更改为实际的 MATLAB 代码,我们可以将其粘贴到 MATLAB 中以获取您的数据结构示例。此外,如果其中一个 Value 列对单个时间戳有多个值,会发生什么情况?
标签: matlab merge parallel-processing reduce