如何将matlab拟合函数应用于矩阵的每一行

我需要在矩阵的每个连续行中使用傅里叶函数,避免使用
for
循环。我试图使用一个单元格数组,但不知道如何使用它。 我的节目是
I=imread('test.tif','tif');  
I=double(I);  
nat=num2cell(I,1);  
wy_I=cellfun(@size,nat, 'UniformOutput', false);  
we_I=cellfun(@(x)1:x(1), wy_I, 'UniformOutput', false);  
wyn=cellfun(@(x,y)fit(x',y,'fourier1'), we_I, nat);   
它给出了
??? Error using ==> cellfun cfit type is not currently implemented.
可能是单元格数组不是这个问题的解决方案。 如何解决这个问题呢? 谢谢 更新
wyn=cellfun(@(x,y)fit(x',y,'fourier1'), we_I, nat, 'UniformOutput',false);  
工作没有错误,但Wyn只有空单元格 我测试了一行
j=cell2mat(we_I(1,1))  
k=cell2mat(nat(1,1))  
z=fit(j',k,'fourier1')  
z
包含良好的模型值 我在cellfun中的语法有问题,但不知道是什么     
已邀请:
在此示例中,FIT函数返回类型为
cfit
的对象。该错误似乎表明CELLFUN无法将这些对象收集到类型为
cfit
的数组中作为输出返回。我会尝试通过在最后一行添加
'UniformOutput',false
来返回
cfit
对象的单元格数组。     

要回复问题请先登录注册