[R-es] Como reordenar datos para analisis multiples correspondencias (MCA)

Jorge Senán Salinas jorge@@en@n @end|ng |rom |mde@@org
Mar Mayo 14 11:03:13 CEST 2019


Buenos dias,

Espero que esto te pueda ayudar. Por lo que entiendo quieres llegar a una seríe de columnas boleanas de ausencia/presencia de determinada alergia o idioma. 

library(tidyverse)

ind<- c("individuo1", "individuo2", "individuo3")
idioma<-c( "en,es", "es,en", "es,fr,en")
alergia<-c(0, "huevo", "pescado,huevo")
color<- c("amarillo", "limon", "salmon")

dbs<-data.frame(ind, idioma, alergia, color)

dbs%>%gather(caracteristica, valor, 2:4)%>%
  separate(valor, c("v1", "v2", "v3"))%>%
  gather(v, valor, 3:5)%>%
  filter(!is.na(valor))%>%
  mutate(categoria_bin=paste(caracteristica, ":", valor))%>%
  select(ind, categoria_bin)%>%
  mutate(value = 1)%>%
  spread(categoria_bin, value, fill= 0)

Saludos

Jorge



Jorge Senán Salinas
Análisis de Ciclo de Vida y Sostenibilidad
Grupo de Tecnología de Membranas
IMDEA-Agua



-----Mensaje original-----
De: R-help-es [mailto:r-help-es-bounces using r-project.org] En nombre de Juan Abasolo
Enviado el: martes, 14 de mayo de 2019 10:19
Para: José Antonio Palazón Ferrando <palazon using um.es>
CC: R-help-es <r-help-es using r-project.org>
Asunto: Re: [R-es] Como reordenar datos para analisis multiples correspondencias (MCA)

Mil gracias, José Antonio!
Creo que, entre tu recomendación y el apelo al ingenio de Javier, voy a terminar generando la tabla que necesito.

Mi problema, al contrario de lo que entiendo que les pasa a los que necesitan condensar, es que necesito extender... mi ya extensa data.frame.
Pero poder pensar en el problema de otros me ayuda a entender el mío.

Hau idatzi du José Antonio Palazón Ferrando (palazon using um.es) erabiltzaileak
(2019 mai. 14, ar. (09:03)):

> Hola:
>
> Quizá esto pueda ser de utilidad:
> Se trata de prepara una “tabla” que tenga tantas columnas como 
> modalidades hay en el total de los individuos.
> Cada columna toma el nombre de la modalidad y hacemos que cada 
> individuo tome el valor 1 en las modalidades correspondientes.
>
> En este texto <http://ares.inf.um.es/mmcl/formatoCondensado.html> se 
> explica y proporciona el procedimiento para hacerlo con listas de 
> especies o caracteres, es muy fácil adaptarlo a tus necesidades.
>
> Seguimos
>
>
>
> El 14/5/19 a las 0:04, Juan Abasolo escribió:
> > Gracias, Javier;
> > Anduve buscando entre tus dos propuestas para mi encarables (plyr y
> > reshape2) y presupongo que el problema es eso del ingenio que 
> > comentás,
> que
> > hay que tener y no tengo.
> >
> > Los paquetes me vinieron igualmente re-bien, porque me di cuenta que 
> > no tengo por qué sufrir haciéndolo a mano cada vez que encaro 
> > algunas de
> esas
> > situaciones.
> >
> > Pero lo de ordenar los datos para el MCA... el ingenio estara en 
> > alguna inlampara de casa, porque a mí no se me enciende la bombilla. 
> > Parece prudente, a falta de más, idea purgar las respuestas dobles 
> > según algún criterio, que siempre es deformar la realidad un poquito más.
> >
> >
> >
> > Hau idatzi du Javier Marcuzzi (javier.ruben.marcuzzi using gmail.com) 
> > erabiltzaileak (2019 mai. 13, al. (14:47)):
> >
> >> Estimado Juan Abasolo
> >>
> >> Para esas actividades se necesita algo de ingenio, no hay una sola 
> >> solución, para esto existen librerías como plyr, reshape2, entre 
> >> otras,
> o
> >> simplemente a mano, en lo personal mis primeros pasos para ordenar 
> >> fue sqldf porque conocía sql más que R, sin embargo hoy las 
> >> alternativas al respecto son muy amplias.
> >>
> >> Yo pienso en como debo colocar los datos en el modelo, luego en 
> >> como
> tengo
> >> los datos originales, y finalmente busco la forma de acomodarlos. 
> >> En
> este
> >> paso posiblemente es donde R tiene la mayor cantidad de 
> >> alternativas e insumo de tiempo razonando puesto que tiene algo de "artesanal en R".
> >>
> >> Javier Rubén Marcuzzi
> >>
> >> El dom., 12 may. 2019 a las 18:53, Juan Abasolo 
> >> (<juan.abasolo using ehu.eus
> >)
> >> escribió:
> >>
> >>> Necesito luz para ordenar unos datos... en realidad, para ordenar
> muchos
> >>> muchoas veces. El problema hoy:
> >>>
> >>> Tengo una base de datos que incluye respuestas dobles en algunas
> variables
> >>> en algunos individuos, tabla didáctica:
> >>>
> >>>              idioma   alergia          color
> >>> individuo1  en,es     0               amarillo
> >>> individuo2  es,en     huevo           limon
> >>> individuo3  es,fr,en  pescado, huevo  salmon
> >>>
> >>> Necesitaría ordenarlos de otra manera (creo), para poder hacer un
> análisis
> >>> de multiples concordancias, porque tal y como lo tengo puesto, por 
> >>> ejemplo, en idioma no hay concordancia, aunque es evidente que 
> >>> entre todos
> podrían
> >>> comunicarse entre castellano o inglés, por ejemplo o que son
> equivalentes,
> >>> también en idioma, los sujetos 1 y 2.
> >>>
> >>> Los datos con los que tengo que trabajar, de momento, son 
> >>> equivalentes
> a
> >>> los del ejemplo, lease categóricos e incluyen posibilidad de 
> >>> respuestas múltiples.
> >>>
> >>> Supongo que le resultará obvio a alguno cómo resolverlo o en qué 
> >>> está
> mal
> >>> el orden así de los datos... pero yo nopuedo darme cuenta.
> >>>
> >>> a) Alguna pista?
> >>> b) Recomendación de lectura para abrir un poco la mente? (tengo 
> >>> más de
> una
> >>> de este estilo)
> >>>
> >>> Gracias
> >>>
> >>>
> >>>
> >>> --
> >>> Juan Abasolo
> >>>
> >>> Hizkuntzaren eta Literaturaren Didaktika Saila | EUDIA ikerketa 
> >>> taldea Bilboko Hezkuntza Fakultatea Euskal Herriko Unibertsitatea 
> >>> UPV/EHU
> >>>
> >>> Sarriena auzoa z/g 48940 - Leioa (Bizkaia)
> >>>
> >>> T: (+34) 94 601 7567
> >>> Telegram: @JuanAbasolo
> >>> Skype: abasolo72
> >>>
> >>> Tutoretza ordutegia <https://labur.eus/JAbasolo-tutoretzak>
> >>>
> >>>          [[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
> >>>
>
> --
>
> ____________________________________________________________
> José Antonio Palazón Ferrando
> Profesor Titular. Departamento de Ecología e Hidrología.
> Facultad de Biología. Universidad de Murcia.
> Campus Universitario de Espinardo
> 30100 MURCIA-SPAIN
> Telf: +34 868 88 49 80
> Fax : +34 868 88 39 63
> Email: palazon using um.es
>
>
>         [[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
>


--
Juan Abasolo

Hizkuntzaren eta Literaturaren Didaktika Saila | EUDIA ikerketa taldea Bilboko Hezkuntza Fakultatea Euskal Herriko Unibertsitatea UPV/EHU

Sarriena auzoa z/g 48940 - Leioa (Bizkaia)

T: (+34) 94 601 7567
Telegram: @JuanAbasolo
Skype: abasolo72

Tutoretza ordutegia <https://labur.eus/JAbasolo-tutoretzak>

	[[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