xlswrite 在向量的情况下

xlswrite in case of vectors

我有一个 .mat 文件,其中包含 titles={'time','data'} 和 2 个列向量: time=[1;2;3;4;5]data=[10;20;30;40;50].

我创建了一个名为 table={'time','data';time data} 的新单元格,我使用了:

xlswrite(filename,table);

但是,当我打开 xlsx 文件时,它只显示标题而不显示数字。 我看到 xlswrite 将显示空单元格,以防我尝试在一个单元格中导出超过 1 个数字。

我可以做些什么来导出整个向量而不是将每个值写入它的单元格吗?

我尝试得到的最终结果是这样的:

time   data
1       10
2       20
3       30
4       40
5       50

你有几个选择。通常我所做的是将它分成两个 xlswrite 调用,一个用于 header,一个用于数据。

titles = {'time','data'};
time = [1;2;3;4;5];
data = [10;20;30;40;50];

xlswrite('myfile.xlsx', titles, 'Sheet1', 'A1');
xlswrite('myfile.xlsx', [time, data], 'Sheet1', 'A2');

或者,如果您有 R2013b 或更新版本,您也可以使用 table builtin, which has its own method for writing out data。使用相同的示例数据:

mytable = table(time, data, 'VariableNames', titles);
writetable(mytable, 'myfile.xlsx');