Scatter plot and curve fitting?
10 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hello every one,
I have two set of vectors
X=[2,3,2,2,1,4,1,1,1,1,2,4,3,4,3,3,2,2,3,2,3,1];
Y=[9.14,38.66,0.72,0.79,1.96,0.68,7.58,0.83,2.37,3.44,2.17,1.6,21.98,5.19,0.71,25.35,17.65,7.78,14.38,4.77,2.5,29.26];
To find the correlation between X and Y, we have used Spearman rank correlation coefficient
[RHO]=corr(X.',Y.','type','spearman');
For fitting line to the data points, we have used polynomial of degree 1,
p=polyfit(X,Y,1);%This will generate the coefficients of polynomial of degree(1)
y=polyval(p,X);% This will give the fitted values for the desired values.
scatter(X,Y,'*');% This will create a scatter plot
hold on;
plot(X,y,'k-');% This will plot regression line.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/200751/image.jpeg)
The Spearman rank correlation coefficient has negative value, but the regression line seems to represent positive correlation between X and Y. Any help regarding this issue will be highly appreciated.
Thanks
4 Kommentare
Rik
am 15 Jan. 2019
They are both fairly close to 0. It wouldn't surprise me if there is a lot of overlap between the two confidence intervals.
Rik
am 17 Mai 2019
I had similar problem. I guess it's because the spearman corrlation which transformed the orignial data into ranks while the polyfit function finds the best linear fit based the original data. If this assumption is correct, my question would be how could we plot the fitting line for spearman correlation in matlab.
Antworten (0)
Siehe auch
Kategorien
Mehr zu Linear and Nonlinear Regression 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!