将数组值函数赋给单元格数组

时间:2014-06-07 18:34:53

标签: arrays matlab

我有一个功能func(x),签名是

[v] = func(x)

其中v是一个函数。阅读this post

后,我想做以下几点
x= [1:10];
for i=1:length(x)
     v{i} = func(x(i));
end

我收到了这个错误:

Cell contents assignment to a non-cell array object.

我做错了什么?

1 个答案:

答案 0 :(得分:2)

似乎v已经是一个向量,你必须初始化一个单元格:

v={}

或删除矢量:

clear v

或者你可以初始化一个正确大小的单元格,因为它一次分配内存就更快了:

v=cell(length(x),1);