Si no desea modificar la lista in situ (por ejemplo, para pasar la lista con un elemento eliminado a una función), puede usar la indexación: los índices negativos significan "no incluir este elemento".
x <- list("a", "b", "c", "d", "e"); # example list
x[-2]; # without 2nd element
x[-c(2, 3)]; # without 2nd and 3rd
Además, los vectores de índice lógicos son útiles:
x[x != "b"]; # without elements that are "b"
Esto funciona con tramas de datos, también:
df <- data.frame(number = 1:5, name = letters[1:5])
df[df$name != "b", ]; # rows without "b"
df[df$number %% 2 == 1, ] # rows with odd numbers only
Gracias, milista [i] <- nula es exactamente la manera de hacerlo. –
Esto no funcionó para mí.Obtengo: 'Error en la lista [longitud (lista)] <- NULO: la sustitución tiene longitud cero ' – wbarksdale
@ La publicación de Aleksandr Levchuck me mostró que en realidad estaba tratando con un vector y necesitaba crear un nuevo objeto – wbarksdale