Mam problemy z dołączaniem danych do listy, która jest już w formacie listy. Mam program, który wyeksportuje obiekty wyników podczas pętli symulacyjnej. Same dane są przechowywane jako lista macierzy. Moim pomysłem jest przechowywanie tych list na liście, a następnie zapisanie tej listy list jako obiektu R do późniejszej analizy, jednak mam pewne problemy z jej osiągnięciem. Pokażę, co zrobiłem z małym abstrakcyjnym przykładem, używając tylko wartości zamiast danych macierzy z mojej symulacji: Powiedz, że uruchomiłem pętlę symulacyjną 3 razy. trakcie iteracji, wyniki wykazy muszą być zbierane do jednej listy list, że będę zapisać jako przedmiot R:Dołączanie listy do listy list w R
Lista zawierać inne listy i być zapisane: outlist1 <- list()
Pierwsza iteracja: resultsa <- list(1,2,3,4,5)
outlist <- append(outlist1,resultsa)
drugiej iteracji: resultsb <- list(6,7,8,9,10)
outlist <- append(outlist1,b)
Trzeciego Iteracja: resultsc <- list(11,12,13,14,15)
outlist <- list(outlist2,c)
Jednak to rozwiązanie nie działa z rosnącą listę zawierających wykazy ten sposób, żądany wynik to:
>outlist
[[1]]
[[1]][[1]]
[1] 1
[[1]][[2]]
[1] 2
[[1]][[3]]
[1] 3
[[1]][[4]]
[1] 4
[[1]][[5]]
[1] 5
[[2]]
[[2]][[1]]
[1] 6
[[2]][[2]]
[1] 7
[[2]][[3]]
[1] 8
[[2]][[4]]
[1] 9
[[2]][[5]]
[1] 10
[[3]]
[[3]][[1]]
[1] 11
[[3]][[2]]
[1] 12
[[3]][[3]]
[1] 13
[[3]][[4]]
[1] 14
[[3]][[5]]
[1] 15
jednak Zamiast tego otrzymuję:
> outlist3
[[1]]
[[1]][[1]]
[[1]][[1]][[1]]
[1] 1
[[1]][[1]][[2]]
[1] 2
[[1]][[1]][[3]]
[1] 3
[[1]][[1]][[4]]
[1] 4
[[1]][[1]][[5]]
[1] 5
[[1]][[2]]
[[1]][[2]][[1]]
[1] 6
[[1]][[2]][[2]]
[1] 7
[[1]][[2]][[3]]
[1] 8
[[1]][[2]][[4]]
[1] 9
[[1]][[2]][[5]]
[1] 10
Jak rozwinąć listę tak, aby sformatowana lista była podobna do pożądanego rezultatu? Jeśli przeprowadzę dalszą analizę na tej liście, muszę mieć łatwy dostęp do elementów.
Nadpisujesz 'outlist' za każdym razem. zauważ, że podczas dodawania nie masz "outlist" w swoim drugim argumencie. – kmace