[R-es] names

Isidro Hidalgo Arellano ihidalgo en jccm.es
Mie Mar 29 13:08:36 CEST 2017


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] 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>
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
https://stat.ethz.ch/mailman/listinfo/r-help-es



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