[R-es] Problema con loop

Jorge I Velez
Sun, 05 Jul 2015 14:27:58 -0000

De nada, Fernando.

Otra alternativa es usando mclapply() en el paquete "parallel". Estoy
en
Mac/Linux y funciona muy bien. Seguramente hay algunos equivalentes en
Windows.

Saludos,

Jorge Velez
JCSMR, Canberra



2015-07-04 12:17 GMT+10:00 Fernando Macedo <fermace en gmail.com>:

>  Muchas gracias Jorge!
>
> Si la opción del loop con for ya la tenía implementada y me demora
> bastante por eso quería probar con apply o en este caso sapply, muchas
> gracias!
>
> Saludos!!
>
> F Macedo
>
> El 03/07/15 a las 23:09, Jorge I Velez escribió:
>
>  Hola Fernando,
>
>  Podrias considerar las siguientes opciones:
>
>  R2 <- vector("list", x)
> for(i in 1:x){
> modelo <- lm(y ~ efectos[, 1:i])
> R2[[i]] <- summary(modelo)$r.squared
> }
> R2
>
>  ? opt2 <- sapply(1:x, ?function(i){
>     modelo <- lm(y ~ efectos[, 1:i])
>    summary(modelo)$r.squared
> })
> opt2
>
>  Para mas información revisa ?sapply, ?lapply y ?lm.  En caso de que
> necesites otros parámetros del modelo de regresión, te sugiero revisar el
> resultado de
>
>  modelo <- lm(y ~ efectos[, 2])
>  names(summary(modelo))
>
>  Saludos cordiales,
>
>  Jorge Velez
> JCSMR, Canberra
>
>
> 2015-07-04 12:01 GMT+10:00 Fernando Macedo <fermace en gmail.com>:
>
>> Buenas a todos, acá estoy yo de nuevo con problemas de loops.
>>
>> Tengo el siguiente problema: un vector de datos (y) y una serie de
>> efectos. El loop lo que intenta es evaluar el R² de modelos
incrementando
>> por vuelta una variable efecto.
>>
>> Seria algo así:
>>
>> for(i in 1:x) {
>> modelo=lm(y~efectos[,1:i])
>> ... codigo para guardar R² y otros por cada vuelta...
>> }
>>
>> apply() puede ir columna a columna pero no sé como hacer para que me
vaya
>> "acumulando columnas" por así decir. De echo no se si puede
hacer.
>>
>> Espero haberme explicado y como siempre agradezco de antemano la
atención.
>>
>> Un abrazo!
>>
>> --
>> Fernando Macedo
>>
>> _______________________________________________
>> R-help-es mailing list
>> R-help-es en r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>