Subscripted assignment dimension mismatch in for loop
1 次查看(过去 30 天)
显示 更早的评论
Does anyone know what's wrong with this? I have tdatas and tissdatas with size (225x4). Every time I run this, I get the following error: Subscripted assignment dimension mismatch. Where am I wrong in this code? I just don't understand it or find it.
for i=1:length(tdatas(1,:))
fun = @(p,tdatas) objfunction(p,tdatas,tu);
z(i)=lsqcurvefit(fun,param0,tdatas(:,i),...
tissdatas(:,i),[0 0 0 0],[1 1 1 1],options);
end
采纳的回答
Star Strider
2017-6-11
You are estimating and returning 4 parameters, and assigning them to a 1 dimensional scalar. I do not know whether you are returning row or column vectors, so the easiest way is to use ‘z’ as a cell array:
z{i} = lsqcurvefit(fun,param0,tdatas(:,i),...
tissdatas(:,i),[0 0 0 0],[1 1 1 1],options);
Note the curly brackets ‘{}’ denoting cell array indexing.
4 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!