Hola Estimados/as,


Hace unos días consulté cómo generar variables dummy cuándo las opciones de
respuesta están cargadas en una misma columna/variable y separadas por una
coma “,”.



Tenía esto:

[image: image.png]



Y debía generar como primer paso esto:



ab<-base %>%

  separate_rows(enfermedad, sep = ",") %>%

  mutate(enfermedad = str_squish(enfermedad))



[image: image.png]


Y finalmente obtener como resultado las dummy:



ab<-base %>%

  separate_rows(enfermedad, sep = ",") %>%

  mutate(enfermedad = str_squish(enfermedad), # Para quitar los espacios en
blanco indeseados

         id = 1) %>%

  spread(key = enfermedad, value = id)



ab[is.na(ab)] <- 0


write.csv(ab,file='base_enfermedades_dummy.csv')


[image: image.png]




Actualmente estoy necesitando lo siguiente: conservar las variables
*Demencia*, *Cáncer*, *Enfermedad Cardíaca*, *Enfermedad pulmonar* y
*Diabetes* y al resto de las variables/enfermedades agruparlas en una nueva
variable “otros”, que sea 1 ó 0 si el caso/paciente tiene 1 en cualquiera
de las enfermedades que no son las que menciono arriba.


Asimismo, necesito generar una nueva variable "*Enfermedades_otras*"
donde figuren cuáles son las enfermedades que mencionó el paciente en
otros, y que estén separadas por una coma.



Adjunto la base en csv (*base_enfermedades_dummy)  *y en el excel (
*Ejemplo_agrupar_en_otros*) dejo un ejemplo de lo que intento hacer.


Muchas gracias! Juan.

Attachment: Ejemplo_agrupar_en_otros.xlsx
Description: MS-Excel 2007 spreadsheet

Attachment: base_enfermedades_dummy.csv
Description: MS-Excel spreadsheet

_______________________________________________
R-help-es mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/r-help-es

Responder a