Fitting every fifth datapoint one after another
1 次查看(过去 30 天)
显示 更早的评论
Hello!
I want to do a linear regression for a bunch of data, using every fifth or third (maybe tenth) Datapoint. The data will be vary in size and therefor I need to do a function that varies as well.
I did the poly1-fit to the first 13 data already by typing it for each fit. Can you think of any way to solve it via function maybe a loop to solve this seccessively for any size of x- or y-datapoints.
I will be happy for any kind of response that helps me to solve this problem.
Thanks a lot!
The result should look like this for more datapoints:
0 个评论
采纳的回答
dbmn
2016-11-8
I have a solution that avoids the loops altogehter, but might not be as readable
n = 5; % Number of datapoints
x1 = reshape(x, n, []); % please make sure, that your number will be divisable into n Elements
y1 = reshape(y, n, []);
a = (x1-x1(1,:))\(y1-y1(1,:)); % we use mldivide here and correct for the origin
a = a(1,:);
b = y1(1,:) - a.*x1(1,:); % here we shifted back
b is the offset and a the slope of your curves
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Descriptive Statistics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!