How to calculae R^2 in linear regrresion ?
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
s= [0,5*10^-2,1*10^-1,1.5*10^-1,2*10^-1,2.5*10^-1,3*10^-1,3.5*10^-1,4*10^-1,4.5*10^-1,5*10^-1,5.5*10^-1,6*10^-1,6.5*10^-1,7*10^-1,7.5*10^-1,8*10^-1,8.5*10^-1,9*10^-1,9.5*10^-1,9.9*10^-1,9.99*10^-1,1,1,1,1,1];
RD= [3.74*10^-1, 3.8*10^-1,3.87*10^-1,3.94*10^-1,4.02*10^-1,4.11*10^-1,4.2*10^-1,4.29*10^-1,4.4*10^-1,4.51*10^-1,4.64*10^-1,4.78*10^-1,4.94*10^-1,5.12*10^-1,5.33*10^-1,5.57*10^-1,5.86*10^-1,6.23*10^-1,6.72*10^-1,7.46*10^-1,8.71*10^-1,9.56*10^-1,9.68*10^-1,9.72*10^-1,9.75*10^-1,9.8*10^-1,9.86*10^-1];
Z1= 1+((1-(s.^2)).^(1/3)).*(((1+s).^(1/3))+(1-s).^(1/3));
Z2= sqrt(3*(s.^2)+(Z1.^2));
Ri= 3+Z2-sqrt((3-Z1).*(3+Z1+2.*Z2));R= 3+Z2+(sqrt((3-Z1).*(3+Z1+2.*Z2)));
Wi= (s+((Ri).^(3/2))).^-1;
WR= (s+((R).^(3/2))).^-1;
Rlr= 2*(1+cos((2/3)*acos(-s)));
Wlr= (s+((Rlr).^2)).^-1;
B=Wi./RD;
Y=RD;
Y=B.*Wi;
scatter(Wi,Y);
hold on
plot(Wi,Y);
xlabel('Wi'),ylabel('RD');
hold off
% if i calculate r^2 I get a matrix 2x2, and it doesn't fit because if I want to plot it I can't because I have vectors of 1x27. how to calculate it and get a single value ?
% I also get a nonlinear line.. there is a break. can any one tell me why ?
0 commentaires
Réponses (1)
Durganshu
le 12 Oct 2020
In order to use the pre-defined library for calculating R-squared value, you'll have to first obtain a linear regression fit for your data. You can use fitlm function for it.You must store value returned by fitlm in a variable.
For example, alpha = fitlm (x,y)
Using alpha.Rsquared.Ordinary and alpha.Rsquared.Adjusted will give you the R^2 values.
Voir également
Catégories
En savoir plus sur Regression dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!