how to compute correlation coefficient without using any matlab functions Except the mean function?

3 ビュー (過去 30 日間)
how i can compute a correlation coefficient which accepts as input two arrays x and y of the same length representing the data sample and, returns their correlation coefficient (i loaded the x and y inputs as arrays). without using any matlab functions Except the mean function.

採用された回答

Star Strider
Star Strider 2014 年 12 月 27 日
Using the Wikipedia definition of the Pearson product-moment correlation for a sample, this works:
x = randi(10,25,1); % Create Data
y = randi(10,25,1); % Create Data
xm = mean(x);
ym = mean(y);
[sxy,s2x,s2y] = deal(0,0,0);
for k1 = 1:length(x)
sxy = sxy + (x(k1)-xm)*(y(k1)-ym);
s2x = s2x + (x(k1)-xm)^2;
s2y = s2y + (y(k1)-ym)^2;
end
r = sxy / (sqrt(s2x)*sqrt(s2y));

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeDescriptive Statistics and Visualization についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by