Problem 258. linear least squares fitting
Inputs:
- f: cell-array of function handles
- x: column vector of x values
- y: column vector of y values, same length as x
Output:
- a: column vector of coefficients, same length as f
In a correct answer the coefficients a take values such that the function
fit = @(x) a(1)*f{1}(x) + a(2)*f{2}(x) + a(3)*f{3}(x) +...+ a(end)*f{end}(x)
minimizes the sum of the squared deviations between fit(x) and y, i.e. sum((fit(x)-y).^2) is minimal.
Remarks:
- The functions will all be vectorized, so e.g. f{1}(x) will return results for the whole vector x
- The absolute errors of a must be smaller than 1e-6 to pass the tests
Solution Stats
Problem Comments
-
6 Comments
Show
3 older comments
Alfonso Nieto-Castanon
on 10 Jan 2013
and nice problem, by the way!
Tomasz
on 10 Jan 2013
Thanks! Nice catch, I fixed that second issue too (those randomized tests have their drawbacks)
Tikay
on 26 Oct 2020
Sorry, but I can not understand the problem to solve.
Can anyone explain to me, please?
Solution Comments
Show commentsProblem Recent Solvers102
Suggested Problems
-
Test if a Number is a Palindrome without using any String Operations
237 Solvers
-
What is the distance from point P(x,y) to the line Ax + By + C = 0?
541 Solvers
-
319 Solvers
-
Given a matrix, return the last eigen value
225 Solvers
-
5267 Solvers
More from this Author7
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!