what is an accurate function for linear regression?
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
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
0 Commenti
Risposta accettata
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
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Linear and Nonlinear Regression 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!