2013-11-12 2 views
0

У меня есть набор данных переменных экспрессии гена 2000 с 62 наблюдениями и вы хотите получить p-значение от регрессии каждой из переменных в переменной класса (которая либо 1 означает здоровый, либо 2 означает опухоль) и хотите регрессировать каждую из переменных выражения гена в переменной класса и получить p-значение в матричной форме - как бы я это сделал?Циклические регрессии

+0

вы можете посмотреть на этот ответ ... http: //stackoverflow.com/a/19743673/321622 – John

ответ

0

Ваш вопрос достаточно прост в деталях, поэтому трудно быть уверенным, что именно после вас. Можете ли вы добавить некоторые примеры данных? Вот начало, которое может иметь отношение, я только что сделал некоторые данные (которые могут не соответствовать тому, что вы хотите сделать):

Пример данных для ваших «переменной экспрессии генов 2000 с 62 наблюдением»

genes <- matrix(sample(2000 * 62), nrow = 62, ncol = 2000) 

Пример данные для вашего «переменного класса (который либо 1 означает здоровый или 2 значение имеет опухоль)»

classvar <- sample(2, 62, replace = TRUE) 

Вот что вам нужно сделать, чтобы получить вектор р-значения для регрессий переменной класса с каждой из переменных 2000 в вашем наборе данных:

# from http://stackoverflow.com/a/5587781/1036500 
    lmp <- function (modelobject) { 
    if (class(modelobject) != "lm") stop("Not an object of class 'lm' ") 
    f <- summary(modelobject)$fstatistic 
    p <- pf(f[1],f[2],f[3],lower.tail=F) 
    attributes(p) <- NULL 
    return(p) 
} 

sapply(1:ncol(genes), function(i) lmp(lm(classvar ~ genes[,i]))) 

Помогло ли это?