我正在为我的情况创建一个虚拟的例子。真正的问题更加复杂。
虚拟示例:
我有一个大小为2的结构,其中一个名为'name'的条目和一个大小为2x1的数组。
因此,名为Store的Struct看起来像:
Store(1).name = 'Apple';
Store(1).Data = [1; 2];
Store(2).name = 'Orange';
Store(2).Data = [24; 57];
我想将此打印为excel,使其如下所示:
Apple 1
Apple 2
Orange 24
Orange 57
我甚至不知道如何从上面的例子开始。我过去使用过xlswrite但从不使用混合类型数据。
答案 0 :(得分:3)
如果您的所有Data
字段的大小均为2x1
,则您应该可以执行以下操作:
% prepare cell to hold your data
xlData = cell(2*numel(store), 2);
% fill column 1:
xlData(1:2:end-1,1) = {store.name};
xlData(2:2:end,1) = xlData(1:2:end-1);
% fill column 2:
xlData(:,2) = num2cell(vertcat(store.Data));
% write to excel:
xlswrite('yourExcelfile.xlsx', xlData)
没有Matlab可以测试,但它应该可以帮助你开始。
由于xlswrite
采用单元格数组,因此混合数据类型没有问题。