получение результата вложенного цикла в список фреймов данных - PullRequest
0 голосов
/ 23 мая 2019

большое спасибо за комментарии и правки, я постараюсь сделать воспроизводимый пример.list_1 - это фрейм данных с 15 столбцами и 33000 строками.

accession <- rownames(list_1)
accession2 <-sample(accession)


list <- a   b   c   d
    g_1 1   0   0   1
    g_2 0   0   1   1
    g_3 0   1   0   1
    g_4 1   1   1   0
    g_5 0   1   0   0
    g_6 1   0   0   1
    g_7 1   1   0   0
    g_8 1   0   1   0
    g_9 1   0   1   0
   g_10 0   1   1   0   

Я хочу сравнить каждый столбец с другим столбцом в фрейме данных и найти общие для них имена строк. Это будетсделано функцией as.data.frame (rownames (get_intersect_members (list_1, (i), (j)))) Я хочу сохранить результат всех сравнений в out, в котором каждый результат сравнения хранится в списке или в виде столбцакадра данных.в идеале вывод будет выглядеть так -

out <- a_vs_b   a_vs_c  a_vs_d  b_vs_c  b_vs_d  c_vs_d
       g_7      g_8     g_1     g_10    g_3     g_2
       g_9      g_6

Я пробовал это -

out<- vector("list", 225L)
for (k in 1:225){
for(i in accession) {
for (j in accession2){
m= as.data.frame(rownames(get_intersect_members(list_1, (i), (j))))
}
 }
out[[k]]<-m
   }

Я могу успешно запустить внутренний цикл for, но я не могу сохранить результат каждого сравнения.Как упоминал Аарон, мой код перезаписывает переменную m и сохраняет значение последнего сравнения вместо сохранения каждого результата отдельно.

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