how to return the R-squared using lscov command
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
How can I get the R-squared using the LSCOV command?
Antworten (1)
Wayne King
am 13 Jan. 2013
Bearbeitet: Wayne King
am 13 Jan. 2013
I'm not sure whether your A matrix can be interpreted as a design matrix for a linear model and B is your response vector (here I'm using the input designations in lscov), but if that is the case, then the classic R-squared would be.
X = lscov(A,B);
xhat = A*X;
resid = xhat-B;
SSE = norm(resid,2)^2;
TSE = norm((B-mean(B),2)^2;
R2 = 1-SSE/TSS;
Alternatively, you could use something like:
X = lscov(A,B);
xhat = A*X;
r2 = norm(xhat,2)^2/norm(B,2)^2;
The l2-norm of xhat is less than or equal to the l2 norm of the B vector. If A*X is a good fit for B, then the norm of xhat will be close to the l2 norm of B and the ratio will be close to 1.
If A*X is bad fit for B, then the ratio will be small.
Siehe auch
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!