Так что у меня очень большой dataframe что выложенный как и в этом примере:Корреляция данных экспрессии генов по данным выживаемости в R cor.test, corr.test или corr?
line gene1 gene2 gene3 gene4 gene5 survival
1 4.05 7.65 0.25 0.789 10.5 0.90
2 2.51 4.36 12.5 7.56 8.99 0.50
3 3.65 2.55 48.8 5.65 5.89 0.25
4 5.65 1.54 8.99 9.2 0.01 0.10
Единственное отличие состоит в том, что я имею дело с более чем 18 000 генов в моих фактических данных. line
относится к генетическим линиям мух, а числа в каждом столбце «ген» относятся к относительной экспрессии генов. survival
- доля выживания в каждой строке. То, что я хотел бы сделать, это сопоставить столбцы с 2 по 5 (выражения генов) со столбцом 6 (survival
). Я попытался это с cor
и она отлично работает:
cor1<-cor(master2[c(2:5)], master2$surv, method="pearson")
Однако, я хочу, чтобы это сделать с помощью cor.test
или corr.test
(от psych
пакета) для вывода р-значений и сделать некоторые корректировки на них.
Я пробовал:
cor1<-cor.test(master2[c(2:5)], master2$surv, method="pearson")
и получите:
Error in cor.test.default(master2[c(2:5)], master2$surv, method = "pearson") :
'x' and 'y' must have the same length
И я также пытался:
cor1<-corr.test(master2[c(2:18141)], master2$surv, method="pearson")
И получите:
Error in 1:ncol(y) : argument of length 0
Любая помощь будет принята с благодарностью !!!
Спасибо заранее,
Phil
Я попытался: cor1 <-corr.test (master2 [c (2: 18141)], master2 $ surv [, ncol (master2], method = "pearson") и получить сообщение об ошибке (Ошибка: неожиданно) 'in' cor1 <-corr.test (master2 [c (2: 18141)], master2 $ surv [, ncol (master2] ") Итак, я попытался: cor1 <-corr.test (master2 [c (2: 18141)], master2 $ surv [, ncol (master2)], method = "pearson") и получил ошибку в master2 $ surv [, ncol (master2)]: неправильное количество измерений – Melderon
Извинения, это была ошибка копирования мой конец. Вы хотите 'master2 [, ncol (master2)]', а не 'master2 $ surv [, ncol (master2)]'. – vincentmajor