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 Solvers103
Suggested Problems
-
2303 Solvers
-
Read a column of numbers and interpolate missing data
2317 Solvers
-
Implement simple rotation cypher
1084 Solvers
-
Natural numbers in string form
1643 Solvers
-
Find out sum and carry of Binary adder
1537 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!