[R-es] Uso reiterado de la funcion seq

Francisco Javier iterador10 en hotmail.com
Mar Abr 11 22:13:14 CEST 2017


Hola a todos,

Escribo debido a una duda en la aplicacion de la funcion seq en cada uno de los "n" componentes de un vector "x". Hasta donde yo se, dicha funcion no permite el uso de vectores. 
En consecuencia, y como primera aproximacion a lo que deseo hacer, he construido un bucle  que retorne una lista de "n" vectores (de distinta longitud), donde cada uno de estos 
vectores resulta de aplicar la funtion seq a los respectivos elementos del vector "x" de la siguiente manera:

# Por ejemplo, sea n = 3 con los siguientes valores iniciales:
x <- c(20, 25, 35)
p <- c(2, 3, 5)

v <- vector('list', n)              # Lista vacia en donde ubicar los "n" vectores
for (i in 1:n) {
   v[[i]] <- seq(x[i], len = p[i])
}

# Posteriormente, ubico todos los vectores en un unico vector, por ejemplo con unlist: res <- unlist(v)
20 21 25 26 27 35 36 37 38 39

Sin embargo, el anterior bucle no es eficiente si "n" es muy grande , por lo que me pregunto si existe una forma mejor de hacerlo (quizas con lapply).
Muchas gracias.

F. Javier



Más información sobre la lista de distribución R-help-es