Как использовать cor.test в функции применения? - PullRequest
0 голосов
/ 05 апреля 2019

У меня действительно большой CSV-файл (dat2), и я пытаюсь использовать cor.test, чтобы получить значение ap, сравнивая один столбец (возраст) с несколькими другими столбцами (каждый столбец после возраста).Затем мне нужно напечатать значение р.Я заставил его работать, используя цикл for, но это занимает очень много времени.Я хочу использовать функцию применения, потому что я думаю, что это сократит время компиляции?

Часть ## - это цикл for, который работает.

b <- apply(dat2[,-1], 1(,4:ncol(dat2)), cor.test(dat2(Age), method="pearson", use="pairwise"))
sapply(b, "[[", "p.value")

## for (i in 4:ncol(dat2)) {
## a <- cor.test(dat2[,3], dat2[,i], method="pearson", use="pairwise")
## print(paste(colnames(dat2)[i], " p=value:", a$p.value))
## }

1 Ответ

0 голосов
/ 05 апреля 2019

Вы были на правильном пути, но с несколькими ошибками.Проверьте следующий код, я думаю, он выдает желаемый результат

b = apply(df2[, -1], 2, function(x) {
    cor.test(df2[, 1], x, method = "pearson", use = "pairwise")
})

p.vals <- sapply(b, "[[", "p.value")
p.vals

country   value 
      0       0 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...