what is an accurate function for linear regression?

1 visualizzazione (ultimi 30 giorni)
Hi All,
can anyone tell me an accurate function for linear regression (fitting a line to data). I am also interested in the slop, interception and R-square of the fitted line. I am only familiar with polifit
Thanks Aziz

Risposta accettata

dpb
dpb il 7 Ott 2016
Modificato: dpb il 8 Ott 2016
Which Toolboxen do you have? There's fit in the Curve Fitting TB and LinearModel.fit in the Statistics Toolbox. polyfit is certainly just as accurate; for such simple fitting and wants, the coefficients are returned directly and Rsq is easily computed from the definition as 1-SSE/SST
ADDENDUM
>> x=1:10; x=x(:); y=randn(size(x)); % sample data
>> b=polyfit(x,y,1) % fit....
b =
0.2412 -0.7021
>> plot(x,y,'-*)
>> yhat=polyval(b,x); % evaluate
>> hold all
>> plot(x,yhat)
>> mn=mean(y);
>> dot(y-mn,y-mn) % definition for SST, total sum squares
ans =
28.1924
>> SST=var(y)*(length(y)-1) % Use builtin VAR function
SST =
28.1924
>> SSE=dot(y-yhat,y-yhat)
SSE =
23.3944
>> Rsq=1-SSE/SST
Rsq =
0.1702

Più risposte (0)

Categorie

Scopri di più su Descriptive Statistics in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by