Jak mogę podzielić listę na podstawie warunku (TRUE, FALSE) na innej liście? Proszę zobaczyć moje przykład poniżej:Podzbiór elementów na liście na podstawie warunku logicznego.
l <- list(a=c(1,2,3), b=c(4,5,6,5), c=c(3,4,5,6))
l
$a
[1] 1 2 3
$b
[1] 4 5 6 5
$c
[1] 3 4 5 6
cond <- lapply(l, function(x) length(x) > 3)
cond
$a
[1] FALSE
$b
[1] TRUE
$c
[1] TRUE
> l[cond]
błąd wl [dyr]: nieprawidłowy typ indeks 'list'
Spowoduje to utworzenie tylko obiektu cond, wyniku podzbioru. – jrara
Aby wyjaśnić, l [cond] teraz produkuje podzbiór, ponieważ sapply zwraca wektor. Edytowane w celu dodania tego. – PatrickR