0

我有 2 列数据,其数值如下,采用制表符分隔格式:

Si1     Si2

8,99691 7,495936
7,7164173   8,092645
4,4428697   4,298263
7,4302206   7,189521
5,897344    5,316047
. 
.
.

为了计算这些之间的相关性,我编写了如下 R 代码:

int<-read.table("data.txt",sep="\t",head=TRUE)
attach(int)
cor(int$Si1,int$Si2)

但它显示错误如下:

Error in cor(int$Si1,int$Si2) : 'x' must be numeric

谁能告诉我如何解决这个问题?

4

2 回答 2

7

read.table("data.txt",sep="\t",header=TRUE, dec = ",")至少需要写。您的数据使用逗号作为小数分隔符。R 假定一个句点 (.)。

于 2012-05-02T19:25:52.247 回答
1

要计算两个向量之间的相关性,它们必须是数字(数字)。您的数据中有逗号,因此它们不是数字。

他们应该在那里吗?这工作正常:

x<-c(1,2,3,4,5)
y<-c(1,2,3,4,5)
cor(x,y)

returns [1] 1
于 2012-05-02T19:24:10.913 回答