2012-06-24 170 views
0

我有兴趣知道什么是合适的x(向量矩阵或数据帧)输入。我目前在两种不同的矩阵中使用函数。但是,我不确定R如何按照我的意图解释我的数据。我将通过实例来解释矩阵的类型。在R中正确使用“cor”函数

1型

  Gene1 Gene2 Gene3 
    sample1 
    sample2 

2型

  Sample1 Sample2 Sample3 
gene 1 
gene 2 
gene 3 

要么是这些格式有效的x参数的?我输入两种类型的矩阵并得到一些结果,但不知道这是否正确使用函数,这些只是随机数。感谢您的时间。我很抱歉,这不是更有趣。

回答

7

X是矩阵时,cor(X)将产生一个平方相关矩阵,其行数和列数等于原始矩阵中的列数。换句话说,cor会在矩阵的列之间产生相关性。这里有一个简单的例子:

> x <- rnorm(5) 
> y <- rnorm(5) 
> cbind(x,y) 
      x  y 
[1,] 1.67287 1.70663 
[2,] -1.23120 0.56948 
[3,] 0.67538 -0.20596 
[4,] -1.21077 0.11648 
[5,] 0.60409 1.15405 

> cor(cbind(x,y)) 
     x  y 
x 1.00000 0.56329 
y 0.56329 1.00000 

这是否回答你的问题?

+0

我想你知道我想知道的。是否有必要将这些列作为变量并对行进行采样以产生正确的数据。如果你使用rbind()而不是cbind(),或者这会导致输出为垃圾,基本上它会是有意义的吗? – order

+1

将数据放在一起的方式并不重要 - 由于文档和Jason的示例,它应该很清楚,它将构建数据列之间相关性的相关矩阵。 – Dason

+0

@Dason我读了文档,没有收集到比较是按列进行的;我现在可以看到,这在文档中有明确说明。我相信你在某些时候没有吸收一份文件。 – order