[R-es] bucle

Jose Antonio Palazon Ferrando palazon en um.es
Lun Jun 21 23:43:33 CEST 2010


Muy elegante.

La he probado, para ver "que pasaba" y solo
he visto una pega. ¿Qué pasa si los valores no
son consecutivos?

Por ejemplo:
1 2 2 3 3 5 5 6 7 7 7 9

Así, que menos elegante y más chapuecera
la solución más general que se me ocurre
es:


C.last <- (C1[-1] == C1[-length(C1)])+0


Gracias por la solución, perdón por ser metijón.



Olivier Nuñez <onunez en iberstat.es> escribió:

> No hace falta bucles.
> Supongamos que tu primera columna es:
>
>> C1
> [1] 1 2 2 3 3 4 4 5 5 5
>
> Entonces, tu ultima se puede definir por
>
>> C.last = C1[-1] - C1[-length(C1)]
>> C.last
> [1] 1 0 1 0 1 0 1 0 0
>
> Un saludo. Olivier
>
> --
> ____________________________________
>
> Olivier G. Nuñez
> Email: onunez en iberstat.es
> Tel : +34 663 03 69 09
> Web: http://www.iberstat.es
>
> ____________________________________
>
>
> ----- Original Message ----- From: "Jos? Miguel Contreras Garc?a"  
> <jmcontreras en ugr.es>
> To: <r-help-es en r-project.org>
> Sent: Monday, June 21, 2010 8:19 PM
> Subject: [R-es] bucle
>
>
>
> Hola a todos.
>
> Estoy intentando hacer un bucle para que me cree una columna con unos y
> ceros (última columna) en función de la primera, de la siguiente manera
>
> 1 1 2 2 3 8 1 1 1 1
> 2 2 1 2 2 6 1 0 11 1
> 2 2 1 2 2 8 1 0 11 0
> 3 1 1 6 6 6 1 0 11 1
> 4 3 1 2 2 6 1 0 11 1
> 4 3 1 2 2 6 1 0 11 0
> 4 3 1 2 2 6 1 0 11 0
>
> Es decir si la primera columna cambia de número la última tenga un uno y
> las siguientes un cero hasta que cambie la primera de nuevo por lo que la
> última tendrá un uno y así sucesivamente.
>
> Gracias
> --
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>



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