在Matlab中将多个数据集导出到一个Excel工作表

时间:2014-08-18 10:16:17

标签: excel matlab dataset

HeJ小鼠, 我有一些数据,我想导出到Excel。 数据由几个序列组成,每个序列都存储为数据集。 通常,数据集' class非常整洁,允许存储变量和观察名称。因此,我想保留它。

对于单个数据集,我使用' export'功能(而不是' xlswrite'),例如:

export(Data, 'XLSfile' ,[pathname '\' filename],'Sheet',1); 

这会写入数据集'数据'到指定的电子表格。

现在我想将多个数据集导出到1张电子表格。 因此,我无法使用' export'功能了(据我所知)。

我知道我可以用函数' xlswrite'来指定范围。并做一个很好的循环,例如:

for iSequence 1:nrSequences   
xlRange= ...;   
xlswrite([pathname '\' fname],Data{iSequence},sheetnumber,xlRange);   
end

如果' Data {iSquence}'是一个数组,但是...它不适用于数据集。 使用数据集尝试此操作会产生以下错误:

'Error using xlswrite (line ...)   
Input data must be a numeric, cell, or logical array.'

那么,有人知道,怎么做?

1 个答案:

答案 0 :(得分:0)

<< 这是我的评论建议的副本,似乎解决了OP的问题>>

您可能已在dataset的文档中注意到MathWorks的通知:

  

将来的版本中可能会删除dataset数据类型。要使用异构数据,请改用MATLAB®table数据类型。有关更多信息,请参阅MATLAB table文档。

因此,您应该过渡到table。然后,您还可以使用built-in functions that support table-to-Excel export