Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在使用R计算相关性时,如何显示值N的数量?_R_Correlation - Fatal编程技术网

在使用R计算相关性时,如何显示值N的数量?

在使用R计算相关性时,如何显示值N的数量?,r,correlation,R,Correlation,为了计算两个数据集之间的相关性,我们很容易使用cor(x,y)?也 有人能告诉我我们怎么做吗?我很感谢你的建议。 编辑:根据Paul Hiemstra的说法,此函数实现了以下功能: cor_withN = function(...) { cor_obj = cor.test(...) print(sprintf("N = %s", cor_obj$parameter + 2)) return(data.frame(cor

为了计算两个数据集之间的相关性,我们很容易使用cor(x,y)?也 有人能告诉我我们怎么做吗?我很感谢你的建议。 编辑:根据Paul Hiemstra的说法,此函数实现了以下功能:

     cor_withN = function(...) {
          cor_obj = cor.test(...)
           print(sprintf("N = %s", cor_obj$parameter + 2))
           return(data.frame(cor = cor_obj$estimate, N = cor_obj$parameter + 2))
                              }
              cor_withN(runif(100), runif(100))
                 [1] "N = 100"
                       cor   N
                cor 0.1718225 100  
cor_withN = function(...) {
   cor_obj = cor.test(...)
   print(sprintf("N = %s", cor_obj$parameter + 2))
   return(data.frame(cor = cor_obj$estimate, N = cor_obj$parameter + 2))
 }
cor_withN(runif(100), runif(100))
[1] "N = 100"
          cor   N
cor 0.1718225 100 

但我们通常希望cor的值与N分开,因此我们可以将结果写成2个文件(cor文件和N文件)。有什么办法吗?

我必须承认这是一个可怕的黑客行为,但这确实起到了作用:

     cor_withN = function(...) {
          cor_obj = cor.test(...)
           print(sprintf("N = %s", cor_obj$parameter + 2))
           return(data.frame(cor = cor_obj$estimate, N = cor_obj$parameter + 2))
                              }
              cor_withN(runif(100), runif(100))
                 [1] "N = 100"
                       cor   N
                cor 0.1718225 100  
cor_withN = function(...) {
   cor_obj = cor.test(...)
   print(sprintf("N = %s", cor_obj$parameter + 2))
   return(data.frame(cor = cor_obj$estimate, N = cor_obj$parameter + 2))
 }
cor_withN(runif(100), runif(100))
[1] "N = 100"
          cor   N
cor 0.1718225 100 
上述函数的优点在于,它决定了
N
,而不管您向
cor.test
馈送的输入是什么:一个
数据帧
,两个向量,等等

但当计算相关性时,可以从输入参数中得到N:

N = length(runif(100))

只需将
cor
替换为
cor\u with n