You must provide the original sentence or text you want to be translated into Spanish in order for me to accurately translate it for you.
Tengo un vector de valores:
y=c(2,3,4,4,3,2,1,1)
Y una lista de vectores de posiciones:
l=list(c(1,2),c(2,3),c(3,4),c(4,5),c(5,6),c(6,7),c(7,8),c(8,1))
Me gustaría reemplazar el valor de y
por NAs (u otros) para cada uno de los elementos en la lista l
.
El resultado esperado es una lista de longitud length(l)
:
[[1]]
[1] NA NA 4 4 3 2 1 1
[[2]]
[1] 2 NA NA 4 3 2 1 1
[[3]]
[1] 2 3 NA NA 3 2 1 1
[[4]]
[1] 2 3 4 NA NA 2 1 1
[[5]]
[1] 2 3 4 4 NA NA 1 1
[[6]]
[1] 2 3 4 4 3 NA NA 1
[[7]]
[1] 2 3 4 4 3 2 NA NA
[[8]]
[1] NA 3 4 4 3 2 1 NA
Se prefieren soluciones en R base.
davy.ai
Podemos usar un bucle
for
para recorrer cada vector en la listal
y reemplazar los valores correspondientes eny
conNA
. Podemos almacenar la salida en una nueva lista.Esto debería dar la salida esperada:
Alternativamente, podemos usar
lapply
para aplicar la función de reemplazo a cada elemento de la listal
.Esto da el mismo resultado que el bucle
for
.