[R-es] names
Isidro Hidalgo Arellano
ihidalgo en jccm.es
Jue Mar 30 13:58:45 CEST 2017
Ah, vale. Ya está. Puedes sacar los nombres con:
names(attr(datos$D4_Otros.1,"value.labels"))
Si te fijas en el str(datos$D4_Otros.1) el atributo "names" está como etiquetas de otro atributo, por eso no lo podías obtener directamente con:
attr(datos$D4_Otros.1,"names")
…ni con…
Names(datos$D4_Otros.1)
Si no te he entendido mal, puedes obtener lo que quieres, de la forma más rápida, montando un factor:
datosEtiquetados = factor(datos$D4_Otros.1, levels = attr(datos$D4_Otros.1,"value.labels"), labels = attr(attr(datos$D4_Otros.1,"value.labels"), "names"))
Un saludo
Isidro Hidalgo Arellano
Observatorio del Mercado de Trabajo
Consejería de Economía, Empresas y Empleo
http://www.castillalamancha.es/
De: Mauricio Monsalvo [mailto:m.monsalvo en gmail.com]
Enviado el: jueves, 30 de marzo de 2017 11:47
Para: Isidro Hidalgo Arellano <ihidalgo en jccm.es>; r-help-es <r-help-es en r-project.org>
Asunto: Re: [R-es] names
Ahí va adjunto como rData.
El 29 de marzo de 2017, 9:45, Isidro Hidalgo Arellano <ihidalgo en jccm.es <mailto:ihidalgo en jccm.es> > escribió:
Quizá si seleccionas un trozo del data.frame y lo guardas como objeto en un rData…
De: Mauricio Monsalvo [mailto: <mailto:m.monsalvo en gmail.com> m.monsalvo en gmail.com]
Enviado el: miércoles, 29 de marzo de 2017 13:17
Para: Isidro Hidalgo Arellano < <mailto:ihidalgo en jccm.es> ihidalgo en jccm.es>
CC: r-help-es < <mailto:r-help-es en r-project.org> r-help-es en r-project.org>
Asunto: Re: [R-es] names
Claro. Va. Pero sospecho que al darle
prueba <- datos[, .(D4_Otros.1, Region, B2a)]
write.csv2(prueba, "datos.csv")
va a perder esos atributos...
El 29 de marzo de 2017, 8:08, Isidro Hidalgo Arellano <ihidalgo en jccm.es> escribió:
Si pudieras enviar un trozo del data frame quizá te podríamos ayudar un poco mejor. A las malas, no utilices una secuencia de if.else, monta un data frame de 2 columnas con las 7 etiquetas y códigos y haz un merge, creo que es mucho más sencillo...
Un saludo
Isidro Hidalgo Arellano
Observatorio del Mercado de Trabajo
Consejería de Economía, Empresas y Empleo
http://www.castillalamancha.es/
-----Mensaje original-----
De: R-help-es [mailto:r-help-es-bounces en r-project.org <mailto:r-help-es-bounces en r-project.org> ] En nombre de Mauricio Monsalvo
Enviado el: miércoles, 29 de marzo de 2017 12:37
Para: r-help-es <r-help-es en r-project.org <mailto:r-help-es en r-project.org> >
Asunto: [R-es] names
Hola.
Tengo un set de datos importados desde SPSS (que usa etiquetas).- Mayormente, no tengo problemas, pero en una variable puntual veo que las etiquetas de las variables "están" pero la clase del vector no me cierra y los resultados no los usan. Trato de mostrarlo:
> na.omit(datos[, .(FORM, Region, Dependencia = B2a, Criterios =
D4_Otros.1)])
FORM Region Dependencia Criterios
1: 44 NEA Provinciales 8
2: 47 NEA Provinciales 8
3: 51 NEA Provinciales 8
4: 52 NEA Provinciales 8
5: 58 NEA Provinciales 8
6: 222 NOA Municipales 11
7: 231 NOA Provinciales 12
8: 232 NOA Religiosos 11
9: 235 NOA Provinciales 12
10: 243 NOA Municipales 8
11: 251 NOA Privados 10
12: 441 NEA Municipales 12
13: 450 NEA Provinciales 8
14: 493 NOA Provinciales 99
15: 530 NOA Nacionales 14
16: 601 NOA Religiosos 9
17: 656 NOA Comunitarios 13
18: 678 NEA Provinciales 15
19: 681 NEA Comunitarios 14
20: 683 NEA Comunitarios 8
> class(datos$D4_Otros.1)
[1] "numeric"
> str(datos$D4_Otros.1)
atomic [1:311] NA NA NA NA NA NA NA NA NA NA ...
- attr(*, "value.labels")= Named chr [1:7] "15" "14" "13" "12" ...
..- attr(*, "names")= chr [1:7] "hijos del personal del hospital"
"diagnostico hemato oncológico" "niños desnutridos o con riesgo" "hijos de empleados municipales" ...
> variable.names(datos$D4_Otros.1) # o bien names(datos$D4_Otros.1)
NULL
> attr(datos$D4_Otros.1, "names")
NULL
Probé algunas transformaciones pero la única forma de hacerlo que encontré es (volver a) asignarle etiquetas a esos factores. Algo como ifelse(1, "hijos del personal del hospital", etc.) ¿Cómo puedo recuperar esa información que muestra attr(*, names)? ¿Es posible? Creo que si R la ve, es porque está y el problema es que no sé utilizarla.
Muchas gracias.
--
Mauricio
[[alternative HTML version deleted]]
_______________________________________________
R-help-es mailing list
R-help-es en r-project.org <mailto:R-help-es en r-project.org>
https://stat.ethz.ch/mailman/listinfo/r-help-es
--
Mauricio
--
Mauricio
[[alternative HTML version deleted]]
Más información sobre la lista de distribución R-help-es