我有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
有谁能告诉我如何解决这个问题?
答案 0 :(得分:7)
至少你需要写read.table("data.txt",sep="\t",header=TRUE, dec = ",")
。您的数据以逗号作为小数点分隔符。 R假设一段时间(。)。
答案 1 :(得分:1)
要计算两个向量之间的相关性,它们必须是数字(数字)。您的数据中有逗号,因此它们不是数字。
他们是否应该在那里?这很好用:
x<-c(1,2,3,4,5)
y<-c(1,2,3,4,5)
cor(x,y)
returns [1] 1