Czy istnieje sposób, aby foreach() zwrócił nazwaną listę/data.frame. Na przykład.foreach: Zachowaj nazwy
foo <- list(a = 1, b = 2)
bar <- foreach (x = foo) %do% { x * 2 }
zwraca list(2, 4)
. Chciałbym, żeby powrócił list(a = 2, b = 4)
.
Co więcej, czy istnieje sposób dostępu do nazwy z wnętrza pętli?
(nie jestem zainteresowany w roztworze, który przypisuje nazwy po pętli foreach.)
Pozdrowienia
Nie jestem pewien, czy 'foreach' ma taką funkcję. Możesz jednak zmienić swoją pętlę na 'foreach (i = seq_along (foo)) {x <- foo [[i]]; ...} 'co pozwoli ci uzyskać dostęp do nazwy każdego elementu przez' names (foo) [i] ' – konvas
Możesz również użyć' x = Map (struktura, .Data = lapply (foo, list), names = names (foo)) ', aby uzyskać nazwy wewnątrz pętli, tak jakby pętla używała' ['zamiast' [['aby uzyskać dostęp do elementów' foo'. –