循环调用r cor.test()没有输出

时间:2013-09-12 01:36:37

标签: r loops

我试图在循环中使用cor.test() r函数,但我无法将它变为'函数'。我可以单独调用这些项目,但我更喜欢使用循环。

我的代码选择如下:

hNames= scan(fileName, nlines = 1, what = character(), sep = ',')
mydata = read.table(fileName, header = TRUE, sep = ',')
names = c(hNames[2:length(hNames)])

for (i in names(mydata[2:length(mydata)]))
{
        for (j in names(mydata[2:length(mydata)]))
        {cor.test(mydata[[i]], mydata[[j]], method='spearman')}
}

哪个不起作用(没有输出),但是,这样做:

cor.test(mydata$Bacteroidetes, mydata$Actinobacteria, method = 'spearman')

我在循环中尝试了几种变体,但是我一直遇到一个错误,说'x'(或'y')必须是数字向量。

我的数据看起来像这样(print(mydata))

PHYLUM Actino Bacter ...Tenericutes
x1     25       45    ...8
x1     26       42    ...8
x2     40       43    ...7
x2     42       41    ...5
x2     40       41    ...5

或者采用原始格式:

PHYLUM,Actinobacteria,Bacteroidetes,...Tenericutes
x1,25,45,...8
x1,26,42,...8
x2,40,43,...7
x2,42,41,...5
x2,40,41,...5

我做错了什么,怎样才能改变它。代码会产生一些输出吗?

谢天谢地。

1 个答案:

答案 0 :(得分:4)

用打印方式调用cor.test。