a simple question about linear regression

1 view (last 30 days)
Hi, I have a n*2 matrix named Y which has two columns; the first column is my observation values and the second column is the probability associated with the observation value in the same row of the first column. Now If I have a set of probabilities let's call it Z(n*1) how can I fined a value for each probability with linear regression of Y values?

Accepted Answer

Image Analyst
Image Analyst on 2 Mar 2014
Edited: Image Analyst on 2 Mar 2014
Try this (untested)
% Find regression formula:
value = Y(:, 1); % Value
p = Y(:, 2); % Probability
coefficients = polyfit(value, p, 3); % Fit 2rd order polynomial
% Now get estimate for some values Z
% Z is a n by 1 array of a bunch of values.
estimated_p = polyval(coefficients, Z)
If you want interpolation instead of regression, you can use interp1(). Just say what you want.
  1 Comment
Image Analyst
Image Analyst on 2 Mar 2014
Note, in case you didn't know, because a lot of people don't, even a 3rd or 10th order polynomial is a linear regression because it's linear in the coefficients , which is what counts, rather than linear in the x value.

Sign in to comment.

More Answers (0)

Categories

Find more on Polynomials in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!