我有x和y数据,每个数组中有n个点。 我想在部分数据上使用polyfit。
我想将数据划分为一定数量的分区(numDivisions)。
我的想法是按照
的方式做点什么n= size(x)%number of data points
numDivisions = 4;%number of times to divide the data
div = zeros(numDivisions,1)%number of points per division
p = zeros(numDivisions,4);% second number is degree of polynomial+1
S = zeros(numDivisions,1);
mu = zeros(numDivisions,1);
E = zeros(numDivisions,1);
for i = 1:numDivisions
div(i) = round(n(1,1)*i/numDivisions) %assign markers for divisions of points
end
for i = 1:size(div)
if i == 1
start = 1;
endpoint = div(i);
[p(i), S(i), mu(i)] = polyfit(x(start:endpoint), y(start:endpoint), 3);
else
[p(i), S(i), mu(i)] = polyfit(x(div(i-1):div(i)), y(div(i-1):div(i)), 3);
end
end
目标是从多元件中获得一组p值。
然而,当我运行它时,我收到此错误:
在赋值A(I)= B中,B中的元素数 而我必须是一样的。 错误(第33行) [p(i),S(i),mu(i)] = polyfit(X(启动:终点), y(开始:端点),3);