单元阵列扩展Matlab

时间:2014-07-03 09:18:43

标签: arrays matlab

我有一个看起来像这样的单元格数组:

                        double              strings               strings
{ 1 x 3,cell} = { {1000000 x 1, double} {1000000 x 1, cell} {1000000 x 1, cell} }

我想使用cell2dataset()将其转换为数据集。因此,我需要扩展所有单元格数组并将它们放入一个单元格中,以便我可以使用cell2dataset()

但我似乎无法将此{ 1 x 3 }扩展为{ 1000000 x 3 }单元格数组。

关于如何做到这一点的任何想法?

1 个答案:

答案 0 :(得分:0)

试试这个:给定'a'是您的输入单元格数组{1 X 3}

b=cell(size(a{1,1},1),size(a,2));
b(:,1)=num2cell(a{1,1});
b(:,2)=a{1,2};
b(:,3)=a{1,3};
ds=cell2dataset(b,'VarNames',{'Observation','attribute_1','attribute_2'});

这似乎是一种粗糙的方法,但它确实有效。任何进一步的改进都是受欢迎的。