R中cor()的算法

时间:2013-12-04 16:01:59

标签: r matlab

如何在R?

中看到cor()的算法

我不是真正的R用户,我问的原因是我正在将一些R代码转换为Matlab。

我想要复制的电话是:

corr.data<=cor(xdata) 

其中xdata是n * m矩阵,其中n大于m。

因此,我需要准确了解计算的完成情况,包括对数据的任何预处理。

我可以访问R并键入“cor”,这给出了函数的代码:

在上面的调用中,相关部分似乎是(我假设正在使用pearson,因为这是默认设置):

  

if(method ==“pearson”)           .Internal(cor(x,y,na.method,FALSE))

这似乎对我来说有点圆,因为似乎再次调用了cor?或者内部是否意味着这是一个不同的cor函数?

如果是这样,我怎么能看到它的算法?

亲切的问候

巴兹

2 个答案:

答案 0 :(得分:1)

您只能看到.internal()查看R的源代码。代码将以C语言编写。

答案 1 :(得分:0)

?cor:“方法:一个字符串,指示要计算哪个相关系数(或协方差)。”pearson“(默认),”kendall“或”spearman“中的一个可以缩写“。

因此,您可以从确定所需的这些标准形式开始,并找出Matlab支持的内容。