[R-es] uso de switch o alternativa

neo er|cconch@munoz @end|ng |rom gm@||@com
Jue Mar 5 21:22:06 CET 2020


Como siempre ando apurado haciendo las tareas, siempre lo hago con 
ifelse aunque seguro hay alguna forma más eficiente, pero no he tenido 
tiempo de investigar. Algo así quizá:


library(data.table)

tus.datos <- as.data.table(tus.datos)

tus.datos[ , newcol:=ifelse( oldcol < 100, 1, ifelse( oldcol < 200, 2 , 
ifelse( oldcol < 300, 3 , 4 ))) ]



ojo con los límites xq has incluído el 200 en dos de los intervalos. 
Ojalá sirva.

Saludos !!



On 05-03-20 16:41, Enrique RAMOS via R-help-es wrote:
> Estimados colegas:Tengo un problema que debe de tener una solución simple pero ya me entrampe.tengo un conjunto de valores para ciertos elementos, y se debe asignar un valor ente 1 y 4, según un rango, he estado intentándolo hacer con switch pero no me ha funcionadola idea es la siguiente tengo el elemento 1, y se debe de asignar un valor de acuerdo a la siguiente tabla
>
> | 1 |     2 |     3         | 4 |
>   |  |
> |
> < 100    | 100-200 | 200-300 | >300 |
>   |  |
>
> de antemano agradezco la ayuda
> Saludos Enrique RAMOSIngeniero oficina de confiabilidadLAPEM - CFE
> 	[[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es using 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