Error when building a trend line

1 view (last 30 days)
[cat,nocat]=min(Animals); % cat and dog 1x1200
[dog,nodog=max(Animals); % cat and dog 1x1200
for i=1:length(cat)
pas(i) = polyfit(cat(i),dog(i),1); % error Subscripted assignment dimension mismatch.
fss(i) = polyval(dog(i),cat(i));
end
I'm trying to build a trend line of two values ​​of cats and dogs, but I get an error, help me figure out what's wrong.
Probyval without a loop, gives only the latest values.

Accepted Answer

Shashank Sharma
Shashank Sharma on 17 Jul 2019
polyfit requires x , y to be vectors. Also, it makes no sense to fit a single value.
It seems to me that your usage of polyval is wrong. Take a look at the docs
https://www.mathworks.com/help/matlab/ref/polyval.html
This is probably what you should be doing,
pas = polyfit(cat,dog,1);
dog_fit = polyval(pas, cat);

More Answers (0)

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!