Комбинат для петель - PullRequest
       10

Комбинат для петель

0 голосов
/ 18 марта 2011

У меня есть два вопроса о моем коде.Сначала я покажу вам код:

partialname5 <- "EV"
EV <- ttest[grep(partialname5, rownames(ttest)),]
partialname1 <- "MYC"
MYC <- ttest[grep(partialname1, rownames(ttest)),]
MYCEV<-list() 
for (j in 1:ncol(MYC)) {
     t1<-t.test(MYC[,j], (EV[,j]))$p.value
     MYCEV[[j]]<- matrix(t1)
}

partialname2 <- "OBX"
OBX <- ttest[grep(partialname2, rownames(ttest)),]
OBXEV<-list() 
for (k in 1:ncol(OBX)) {
     t2<-t.test(OBX[,k], (EV[,k]))$p.value
     OBXEV[[k]]<- matrix(t2)
}

partialname3 <- "WDR"
WDR <- ttest[grep(partialname3, rownames(ttest)),]
WDREV<-list() 
for (l in 1:ncol(WDR)) {
     t3<-t.test(WDR[,l], (EV[,l]))$p.value
     WDREV[[l]]<- matrix(t3)
}

partialname4 <- "PIM"
PIM <- ttest[grep(partialname4, rownames(ttest)),]
PIMEV<-list() 
for (m in 1:ncol(PIM)) {
     t4<-t.test(PIM[,m], (EV[,m]))$p.value
     PIMEV[[m]]<- matrix(t4)
}

Мой первый вопрос: возможно ли заполнить мои частичные имена следующим образом:

partialnames<- c('EV','PIM','OBX','MYC','WDR') 

А затем по первому циклу возьмитеПервый аргумент.

Второй вопрос: возможно ли объединить эти циклы для всех partialnames?

Спасибо!

Саманта

1 Ответ

0 голосов
/ 18 марта 2011

Воспроизводимый пример мог бы помочь, но краткий ответ - да. Я думаю, что вы пытаетесь протестировать все комбинации значений для определения переменных (имен строк) EV, PIM, OBX, MYC и WDR для каждого столбца. Это верно?

Если это так, это может сработать, но это трудно понять без воспроизводимого примера.

splits <- c('EV', 'PIM', 'OBX', 'MYC', 'WDR')
results <- list()
for(i in 1:length(splits) {
 for(j in 1:length(splits) {
   for(k in 1:ncol(ttest)) {
    results[i][j][k] <- t.test(ttest[rownames(ttest)==splits[i],k], ttest[rownames(ttest)==splits[j],k])
   }
 }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...