1. Tipo de diseño y limitaciones del estudio

¿Qué tipo de diseño se ha elegido para estudiar este problema clínico? ¿Por qué? Comenta las posibles limitaciones del diseño.
pexels-anna-shvets-4557876

Tabla de Contenidos

Script en R

				
					library(readxl)
ense<-ENSE_2017_Trabajo_Final2
summary (ense)

#RECODIFICAR Y DEFINIR VARIABLES

#SEXOa   
ense$SEXOa <- factor(ense$SEXOa, labels = c("hombre", "mujer"))

#EDADa
#convertir a numerica
ense$EDADa <- as.numeric(as.character(ense$EDADa))
summary(ense$EDADa)

##SITUACIÓN LABORAL - A11_i
ense$A11_i <- factor(ense$A11_i, labels = c("Trabajando", "En desempleo", "Jubilado/a,prejubilado/a", "Estudiando","Incapacitado/a para trabajar","Las labores del hogar","Otros"))

##E1_1 PAIS DE NACIMIENTO 
#1	Nacidos en España 2	Nacidos en el extranjero 8	No sabe 9	No contesta
ense$E1_1 <- factor(ense$E1_1, labels = c("Nacidos en España", "Nacidos en el extranjero"))
summary(ense$E1_1)
str(ense$E1_1) 

##G21 ESTADO DE SALUD 
#1	Muy bueno 2	Bueno 3	Regular 4	Malo 5	Muy malo
ense$G21 <- factor(ense$G21, labels = c("Muy bueno", "Bueno", "Regular", "Malo", "Muy malo"))
summary(ense$G21)
str(ense$G21)

# G25c_1 TENSION ALTA  1 Sí, 2 No,8 No sabe, 9 No contesta
ense$G25c_1 <- factor(ense$G25c_1, labels = c("Sí", "No", "No sabe"))
str(ense$G25c_1)
summary(ense$G25c_1)
#Imputación de NA
ense$G25c_1[is.na(ense$G25c_1)]<-"No" 
summary(ense$G25c_1)
str(ense$G25c_1)
table (ense$G25c_1)

# G25c_2 IAM  1 Sí, 2 No,8 No sabe, 9 No contesta
table (ense$G25c_2)
ense$G25c_2 <- factor(ense$G25c_2, labels = c("Sí", "No"))
str(ense$G25c_2)
summary(ense$G25c_2)
#Imputación de NA
ense$G25c_2[is.na(ense$G25c_2)]<-"No" 
summary(ense$G25c_2)
str(ense$G25c_2)
table (ense$G25c_2)

# G25c_11 ENF NEUMO  1 Sí, 2 No,8 No sabe, 9 No contesta
table (ense$G25c_11)
ense$G25c_11 <- factor(ense$G25c_11, labels = c("Sí", "No"))
str(ense$G25c_11)
summary(ense$G25c_11)
#Imputación de NA
ense$G25c_11[is.na(ense$G25c_11)]<-"No" 
summary(ense$G25c_11)
str(ense$G25c_11)
table (ense$G25c_11)

# G25c_12 DM  1 Sí, 2 No,8 No sabe, 9 No contesta
table (ense$G25c_12)
ense$G25c_12 <- factor(ense$G25c_12, labels = c("Sí", "No"))
str(ense$G25c_12)
summary(ense$G25c_12)
#Imputación de NA
ense$G25c_12[is.na(ense$G25c_12)]<-"No" 
summary(ense$G25c_12)
str(ense$G25c_12)
table (ense$G25c_12)

# G25c_26 TUMORES MALIGNOS  1 Sí, 2 No,8 No sabe, 9 No contesta
table (ense$G25c_26)
ense$G25c_26 <- factor(ense$G25c_26, labels = c("Sí", "No", "No sabe"))
str(ense$G25c_26)
summary(ense$G25c_26)
#Imputación de NA
ense$G25c_26[is.na(ense$G25c_26)]<-"No" 
summary(ense$G25c_26)
str(ense$G25c_26)
table (ense$G25c_26)

##GHQ12 MORBILIDAD PSIQUICA --> numerica
names(ense)[names(ense) == "GHQ-12"] <- "GHQ12"
summary(ense$GHQ12)
str (ense$GHQ12)
table (ense$GHQ12)

##recategorizar variable GHQ12 --> MORBILIDAD PSICOLÓGICA
ense<-within(ense,{
  GHQ12_rec<-NA 
  GHQ12_rec[GHQ12<=2]<-"No morbilidad psíquica" 
  GHQ12_rec[GHQ12>2]<-"Sí morbilidad psíquica" 
})
table (ense$GHQ12_rec)
summary(ense$GHQ12_rec)
str (ense$GHQ12_rec)
ense$GHQ12_rec <- factor(ense$GHQ12_rec, labels = c("No morbilidad psíquica", "Sí morbilidad psíquica"))
table (ense$GHQ12_rec)

##N48 Tiempo desde ultima consulta al medico 4 cat
table (ense$N48)
ense$N48 <- factor(ense$N48, labels = c("Ultimas 4 sem", "4sem-12meses", "Más de 12m", "Nunca"))
table (ense$N48)

##O78 Utilización de SU en 12 meses 2 cat
table (ense$O78)
ense$O78 <- factor(ense$O78, labels = c("Sí", "No"))
table (ense$O78)

##P87_2a CONSUMO MEDICINAS DOLOR --- 1 Sí, 2 No,8 No sabe, 9 No contesta
table (ense$P87_2a)
ense$P87_2a <- factor(ense$P87_2a, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$P87_2a)
summary(ense$P87_2a)
str (ense$P87_2a)
#imputacion
ense$P87_2a[is.na(ense$P87_2a)]<-"No" 
summary(ense$P87_2a)
str(ense$P87_2a)
table (ense$P87_2a)

##P87_7a CONSUMO MEDICINAS TRANQUILIZANTES --- 1 Sí, 2 No,8 No sabe, 9 No contesta
table (ense$P87_7a)
ense$P87_7a <- factor(ense$P87_7a, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$P87_7a)
summary(ense$P87_7a)
str (ense$P87_7a)
#imputacion
ense$P87_7a[is.na(ense$P87_7a)]<-"No" 
summary(ense$P87_7a)

##P87_12a CONSUMO MEDICINAS TA --- 1 Sí, 2 No,8 No sabe, 9 No contesta
table (ense$P87_12a)
ense$P87_12a <- factor(ense$P87_12a, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$P87_12a)
summary(ense$P87_12a)
str (ense$P87_12a)
#imputacion
ense$P87_12a[is.na(ense$P87_12a)]<-"No" 
summary(ense$P87_12a)

##P87_14a CONSUMO MEDICINAS ANTIDEPRESIVOS --- 1 Sí, 2 No,8 No sabe, 9 No contesta  
table (ense$P87_14a)
ense$P87_14a <- factor(ense$P87_14a, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$P87_14a)
summary(ense$P87_14a)
str (ense$P87_14a)
#imputacion
ense$P87_14a[is.na(ense$P87_14a)]<-"No" 
summary(ense$P87_14a)

##P87_15a CONSUMO MEDICINAS NO EMBARAZO  --- 1 Sí, 2 No,8 No sabe, 9 No contesta     
table (ense$P87_15a)
ense$P87_15a <- factor(ense$P87_15a, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$P87_15a)
summary(ense$P87_15a)
str (ense$P87_15a)
#imputacion
ense$P87_15a[is.na(ense$P87_15a)]<-"No" 
summary(ense$P87_15a)

##P87_17a CONSUMO MEDICINAS ADELGAZAR  --- 1 Sí, 2 No,8 No sabe, 9 No contesta
table (ense$P87_17a)
ense$P87_17a <- factor(ense$P87_17a, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$P87_17a)
summary(ense$P87_17a)
str (ense$P87_17a)
#imputacion
ense$P87_17a[is.na(ense$P87_17a)]<-"No" 
summary(ense$P87_17a)

##P87_18a CONSUMO MEDICINAS COLESTEROL  --- 1 Sí, 2 No,8 No sabe, 9 No contesta    
table (ense$P87_18a)
ense$P87_18a <- factor(ense$P87_18a, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$P87_18a)
summary(ense$P87_18a)
str (ense$P87_18a)
#imputacion
ense$P87_18a[is.na(ense$P87_18a)]<-"No" 
summary(ense$P87_18a)

##P87_19a CONSUMO MEDICINAS DM  --- 1 Sí, 2 No,8 No sabe, 9 No contesta         
table (ense$P87_19a)
ense$P87_19a <- factor(ense$P87_19a, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$P87_19a)
summary(ense$P87_19a)
str (ense$P87_19a)
#imputacion
ense$P87_19a[is.na(ense$P87_19a)]<-"No" 
summary(ense$P87_19a)

##P87_21a CONSUMO MEDICINAS HOMEOPATICOS --- 1 Sí, 2 No,8 No sabe, 9 No contesta     
table (ense$P87_21a)
ense$P87_21a <- factor(ense$P87_21a, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$P87_21a)
summary(ense$P87_21a)
str (ense$P87_21a)
#imputacion
ense$P87_21a[is.na(ense$P87_21a)]<-"No" 
summary(ense$P87_21a)

##P87_22a CONSUMO MEDICINAS NATURISTAS  --- 1 Sí, 2 No,8 No sabe, 9 No contesta
table (ense$P87_22a)
ense$P87_22a <- factor(ense$P87_22a, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$P87_22a)
summary(ense$P87_22a)
str (ense$P87_22a)
#imputacion
ense$P87_22a[is.na(ense$P87_22a)]<-"No" 
summary(ense$P87_22a)

##Q88 VACUNA GRIPE 
table (ense$Q88)
ense$Q88 <- factor(ense$Q88, labels = c("Sí", "No"))
table (ense$Q88)

##Q103 CITOLOGIA   
table (ense$Q103)
ense$Q103 <- factor(ense$Q103, labels = c("Sí", "No","No sabe", "No contesta"))
table (ense$Q103)
#imputacion
ense$Q103[is.na(ense$Q103)]<-"No" 
summary(ense$Q103)

##R108_1 FALTA ATENCION MEDICA POR PROB ECONOMICOS 
#1 Sí, 2 No, 3 No lo he necesitado, 8 No sabe, 9 No contesta
table (ense$R108_1)
ense$R108_1 <- factor(ense$R108_1, labels = c("Sí", "No", "No lo he necesitado", "No sabe", "No contesta"))
summary (ense$R108_1)
str(ense$R108_1)
table (ense$R108_1)

##T112 ACTIVIDAD FÍSICA 
#1 No hago ejercicio. El tiempo libre lo ocupo de forma casi completamente sedentaria 2 Hago alguna actividad física o deportiva ocasional 3 Hago actividad física varias veces al mes 4 Hago entrenamiento deportivo o físico varias veces a la semana 8 No sabe 9 No contesta
ense$T112 <- factor(ense$T112, labels = c("No hago ejercicio", "Alguna actividad física", "Varias veces al mes", "Varias veces a la semana", "No sabe", "No contesta"))
str (ense$T112)
summary(ense$T112)
table (ense$T112)

##V121 Fuma 6 cat 
table (ense$V121)
ense$V121 <- factor(ense$V121, labels = c("A diario", "No a diario", "Ha fumado antes", "Nunca ha fumado de forma habitual", "No sabe", "No contesta"))
table (ense$V121)

##Y133 cuidado personas mayores 4 cat
table (ense$Y133)
ense$Y133 <- factor(ense$Y133, labels = c("Sí", "No", "No sabe", "No contesta"))
table (ense$Y133)

summary (ense)

				
			

Resumen explicativo del script

He abordado el análisis de los datos de la Encuesta Nacional de Salud de España (ENSE) del año 2017 con un enfoque meticuloso en R, utilizando mi experiencia en la manipulación y análisis de datos. Comencé por cargar el conjunto de datos ENSE_2017_Trabajo_Final2 en un dataframe llamado ense, usando la biblioteca readxl que facilita la importación de datos de Excel. Luego, ejecuté un summary(ense) para tener una visión general y rápida del dataframe.

Mi siguiente paso fue la recodificación y definición de variables clave, con el fin de facilitar el análisis posterior. Por ejemplo, transformé la variable SEXOa en un factor con etiquetas más descriptivas («hombre», «mujer»). Para la variable EDADa, convertí los valores a numéricos, dado que originalmente estaban como caracteres.

Me concentré también en otras variables importantes como la situación laboral (A11_i), país de nacimiento (E1_1), estado de salud (G21), y varias variables relacionadas con condiciones de salud específicas como tensión alta (G25c_1), enfermedad cardíaca (G25c_2), neumonía (G25c_11), diabetes (G25c_12), y tumores malignos (G25c_26). Cada una de estas las convertí en factores con etiquetas claras y, en algunos casos, imputé valores ‘No’ en lugar de NA para mantener la integridad de los datos.

Además, traté la variable GHQ-12 relacionada con la morbilidad psíquica, renombrándola a GHQ12 para facilitar su manejo y recategorizándola en dos grupos: «No morbilidad psíquica» y «Sí morbilidad psíquica». Esta recategorización es vital para análisis posteriores relacionados con la salud mental.

Incluí también variables sobre el uso de servicios de salud y hábitos de vida, como la última visita al médico (N48), uso de servicios de urgencias (O78), y consumo de diferentes tipos de medicamentos (P87_2a, P87_7a, etc.). Cada una de estas variables fue cuidadosamente convertida en factores con etiquetas apropiadas y, cuando fue necesario, realicé imputaciones para manejar los valores faltantes.

Finalmente, revisé variables sobre prácticas preventivas de salud como la vacunación contra la gripe (Q88), citologías (Q103), y atención médica en función de problemas económicos (R108_1), así como la actividad física (T112) y hábitos de fumar (V121). De nuevo, convertí estas variables en factores y revisé sus resúmenes para asegurarme de que los datos estuvieran correctamente estructurados para análisis más detallados.

Este proceso meticuloso de limpieza y recodificación de datos es crucial para garantizar la precisión y fiabilidad de cualquier análisis estadístico posterior. Con mi experiencia, pude identificar y abordar eficientemente las peculiaridades y desafíos que presentan los conjuntos de datos complejos como el de la ENSE.

Consola del Script en R

				
					library(readxl)
> ense<-ENSE_2017_Trabajo_Final2
> summary (ense)
    SEXOa              EDADa              A11_i               E1_1               G21               G25c_1         
 Length:23089       Length:23089       Length:23089       Length:23089       Length:23089       Length:23089      
 Class :character   Class :character   Class :character   Class :character   Class :character   Class :character  
 Mode  :character   Mode  :character   Mode  :character   Mode  :character   Mode  :character   Mode  :character  
                                                                                                                  
                                                                                                                  
                                                                                                                  
    G25c_2            G25c_11            G25c_12            G25c_26              GHQ-12           N48           
 Length:23089       Length:23089       Length:23089       Length:23089       Min.   : 0.000   Length:23089      
 Class :character   Class :character   Class :character   Class :character   1st Qu.: 0.000   Class :character  
 Mode  :character   Mode  :character   Mode  :character   Mode  :character   Median : 0.000   Mode  :character  
                                                                             Mean   : 1.462                     
                                                                             3rd Qu.: 2.000                     
                                                                             Max.   :12.000                     
     O78               P87_2a             P87_7a            P87_12a            P87_14a            P87_15a         
 Length:23089       Length:23089       Length:23089       Length:23089       Length:23089       Length:23089      
 Class :character   Class :character   Class :character   Class :character   Class :character   Class :character  
 Mode  :character   Mode  :character   Mode  :character   Mode  :character   Mode  :character   Mode  :character  
                                                                                                                  
                                                                                                                  
                                                                                                                  
   P87_17a            P87_18a            P87_19a            P87_21a            P87_22a              Q88           
 Length:23089       Length:23089       Length:23089       Length:23089       Length:23089       Length:23089      
 Class :character   Class :character   Class :character   Class :character   Class :character   Class :character  
 Mode  :character   Mode  :character   Mode  :character   Mode  :character   Mode  :character   Mode  :character  
                                                                                                                  
                                                                                                                  
                                                                                                                  
     Q103              R108_1              T112               V121               Y133          
 Length:23089       Length:23089       Length:23089       Length:23089       Length:23089      
 Class :character   Class :character   Class :character   Class :character   Class :character  
 Mode  :character   Mode  :character   Mode  :character   Mode  :character   Mode  :character  
                                                                                               
                                                                                               
                                                                                               
> 
> #RECODIFICAR Y DEFINIR VARIABLES
> 
> #SEXOa   
> ense$SEXOa <- factor(ense$SEXOa, labels = c("hombre", "mujer"))
> 
> #EDADa
> #convertir a numerica
> ense$EDADa <- as.numeric(as.character(ense$EDADa))
> summary(ense$EDADa)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  15.00   39.00   53.00   53.44   68.00  103.00 
> 
> ##SITUACIÓN LABORAL - A11_i
> ense$A11_i <- factor(ense$A11_i, labels = c("Trabajando", "En desempleo", "Jubilado/a,prejubilado/a", "Estudiando","Incapacitado/a para trabajar","Las labores del hogar","Otros"))
> 
> ##E1_1 PAIS DE NACIMIENTO 
> #1	Nacidos en España 2	Nacidos en el extranjero 8	No sabe 9	No contesta
> ense$E1_1 <- factor(ense$E1_1, labels = c("Nacidos en España", "Nacidos en el extranjero"))
> summary(ense$E1_1)
       Nacidos en España Nacidos en el extranjero 
                   20846                     2243 
> str(ense$E1_1) 
 Factor w/ 2 levels "Nacidos en España",..: 1 2 1 1 1 1 1 1 2 1 ...
> 
> ##G21 ESTADO DE SALUD 
> #1	Muy bueno 2	Bueno 3	Regular 4	Malo 5	Muy malo
> ense$G21 <- factor(ense$G21, labels = c("Muy bueno", "Bueno", "Regular", "Malo", "Muy malo"))
> summary(ense$G21)
Muy bueno     Bueno   Regular      Malo  Muy malo 
     4190     11145      5531      1724       499 
> str(ense$G21)
 Factor w/ 5 levels "Muy bueno","Bueno",..: 3 2 4 2 2 2 3 2 2 3 ...
> 
> # G25c_1 TENSION ALTA  1 Sí, 2 No,8 No sabe, 9 No contesta
> ense$G25c_1 <- factor(ense$G25c_1, labels = c("Sí", "No", "No sabe"))
> str(ense$G25c_1)
 Factor w/ 3 levels "Sí","No","No sabe": 1 NA NA NA 1 NA NA NA NA NA ...
> summary(ense$G25c_1)
     Sí      No No sabe    NA's 
   6244     114       2   16729 
> #Imputación de NA
> ense$G25c_1[is.na(ense$G25c_1)]<-"No" 
> summary(ense$G25c_1)
     Sí      No No sabe 
   6244   16843       2 
> str(ense$G25c_1)
 Factor w/ 3 levels "Sí","No","No sabe": 1 2 2 2 1 2 2 2 2 2 ...
> table (ense$G25c_1)

     Sí      No No sabe 
   6244   16843       2 
> 
> # G25c_2 IAM  1 Sí, 2 No,8 No sabe, 9 No contesta
> table (ense$G25c_2)

  1   2 
530  16 
> ense$G25c_2 <- factor(ense$G25c_2, labels = c("Sí", "No"))
> str(ense$G25c_2)
 Factor w/ 2 levels "Sí","No": NA NA NA NA NA NA NA NA NA NA ...
> summary(ense$G25c_2)
   Sí    No  NA's 
  530    16 22543 
> #Imputación de NA
> ense$G25c_2[is.na(ense$G25c_2)]<-"No" 
> summary(ense$G25c_2)
   Sí    No 
  530 22559 
> str(ense$G25c_2)
 Factor w/ 2 levels "Sí","No": 2 2 2 2 2 2 2 2 2 2 ...
> table (ense$G25c_2)

   Sí    No 
  530 22559 
> 
> # G25c_11 ENF NEUMO  1 Sí, 2 No,8 No sabe, 9 No contesta
> table (ense$G25c_11)

   1    2 
1154   32 
> ense$G25c_11 <- factor(ense$G25c_11, labels = c("Sí", "No"))
> str(ense$G25c_11)
 Factor w/ 2 levels "Sí","No": NA NA NA NA NA NA NA NA NA NA ...
> summary(ense$G25c_11)
   Sí    No  NA's 
 1154    32 21903 
> #Imputación de NA
> ense$G25c_11[is.na(ense$G25c_11)]<-"No" 
> summary(ense$G25c_11)
   Sí    No 
 1154 21935 
> str(ense$G25c_11)
 Factor w/ 2 levels "Sí","No": 2 2 2 2 2 2 2 2 2 2 ...
> table (ense$G25c_11)

   Sí    No 
 1154 21935 
> 
> # G25c_12 DM  1 Sí, 2 No,8 No sabe, 9 No contesta
> table (ense$G25c_12)

   1    2 
2266    9 
> ense$G25c_12 <- factor(ense$G25c_12, labels = c("Sí", "No"))
> str(ense$G25c_12)
 Factor w/ 2 levels "Sí","No": 1 NA NA NA NA NA NA NA NA NA ...
> summary(ense$G25c_12)
   Sí    No  NA's 
 2266     9 20814 
> #Imputación de NA
> ense$G25c_12[is.na(ense$G25c_12)]<-"No" 
> summary(ense$G25c_12)
   Sí    No 
 2266 20823 
> str(ense$G25c_12)
 Factor w/ 2 levels "Sí","No": 1 2 2 2 2 2 2 2 2 2 ...
> table (ense$G25c_12)

   Sí    No 
 2266 20823 
> 
> # G25c_26 TUMORES MALIGNOS  1 Sí, 2 No,8 No sabe, 9 No contesta
> table (ense$G25c_26)

   1    2    8 
1146   39    1 
> ense$G25c_26 <- factor(ense$G25c_26, labels = c("Sí", "No", "No sabe"))
> str(ense$G25c_26)
 Factor w/ 3 levels "Sí","No","No sabe": NA NA 1 NA NA NA NA NA NA 1 ...
> summary(ense$G25c_26)
     Sí      No No sabe    NA's 
   1146      39       1   21903 
> #Imputación de NA
> ense$G25c_26[is.na(ense$G25c_26)]<-"No" 
> summary(ense$G25c_26)
     Sí      No No sabe 
   1146   21942       1 
> str(ense$G25c_26)
 Factor w/ 3 levels "Sí","No","No sabe": 2 2 1 2 2 2 2 2 2 1 ...
> table (ense$G25c_26)

     Sí      No No sabe 
   1146   21942       1 
> 
> ##GHQ12 MORBILIDAD PSIQUICA --> numerica
> names(ense)[names(ense) == "GHQ-12"] <- "GHQ12"
> summary(ense$GHQ12)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  0.000   0.000   0.000   1.462   2.000  12.000 
> str (ense$GHQ12)
 num [1:23089] 6 0 6 0 0 0 0 0 3 2 ...
> table (ense$GHQ12)

    0     1     2     3     4     5     6     7     8     9    10    11    12 
14373  2651  1664   962   664   558   427   375   293   259   258   254   351 
> 
> ##recategorizar variable GHQ12 --> MORBILIDAD PSICOLÓGICA
> ense<-within(ense,{
+  GHQ12_rec<-NA 
+  GHQ12_rec[GHQ12<=2]<-"No morbilidad psíquica" 
+  GHQ12_rec[GHQ12>2]<-"Sí morbilidad psíquica" 
+ })
> table (ense$GHQ12_rec)

No morbilidad psíquica Sí morbilidad psíquica 
                 18688                   4401 
> summary(ense$GHQ12_rec)
   Length     Class      Mode 
    23089 character character 
> str (ense$GHQ12_rec)
 chr [1:23089] "Sí morbilidad psíquica" "No morbilidad psíquica" "Sí morbilidad psíquica" "No morbilidad psíquica" ...
> ense$GHQ12_rec <- factor(ense$GHQ12_rec, labels = c("No morbilidad psíquica", "Sí morbilidad psíquica"))
> table (ense$GHQ12_rec)

No morbilidad psíquica Sí morbilidad psíquica 
                 18688                   4401 
> 
> ##N48 Tiempo desde ultima consulta al medico 4 cat
> table (ense$N48)

    1     2     3     4 
 7120 11956  3972    41 
> ense$N48 <- factor(ense$N48, labels = c("Ultimas 4 sem", "4sem-12meses", "Más de 12m", "Nunca"))
> table (ense$N48)

Ultimas 4 sem  4sem-12meses    Más de 12m         Nunca 
         7120         11956          3972            41 
> 
> ##O78 Utilización de SU en 12 meses 2 cat
> table (ense$O78)

    1     2 
 6901 16188 
> ense$O78 <- factor(ense$O78, labels = c("Sí", "No"))
> table (ense$O78)

   Sí    No 
 6901 16188 
> 
> ##P87_2a CONSUMO MEDICINAS DOLOR --- 1 Sí, 2 No,8 No sabe, 9 No contesta
> table (ense$P87_2a)

   1    2    8    9 
8157 7703    1    2 
> ense$P87_2a <- factor(ense$P87_2a, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$P87_2a)

         Sí          No     No sabe No contesta 
       8157        7703           1           2 
> summary(ense$P87_2a)
         Sí          No     No sabe No contesta        NA's 
       8157        7703           1           2        7226 
> str (ense$P87_2a)
 Factor w/ 4 levels "Sí","No","No sabe",..: 1 2 2 2 2 NA 2 NA NA 1 ...
> #imputacion
> ense$P87_2a[is.na(ense$P87_2a)]<-"No" 
> summary(ense$P87_2a)
         Sí          No     No sabe No contesta 
       8157       14929           1           2 
> str(ense$P87_2a)
 Factor w/ 4 levels "Sí","No","No sabe",..: 1 2 2 2 2 2 2 2 2 1 ...
> table (ense$P87_2a)

         Sí          No     No sabe No contesta 
       8157       14929           1           2 
> 
> ##P87_7a CONSUMO MEDICINAS TRANQUILIZANTES --- 1 Sí, 2 No,8 No sabe, 9 No contesta
> table (ense$P87_7a)

    1     2     8     9 
 3445 12414     1     3 
> ense$P87_7a <- factor(ense$P87_7a, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$P87_7a)

         Sí          No     No sabe No contesta 
       3445       12414           1           3 
> summary(ense$P87_7a)
         Sí          No     No sabe No contesta        NA's 
       3445       12414           1           3        7226 
> str (ense$P87_7a)
 Factor w/ 4 levels "Sí","No","No sabe",..: 1 2 2 1 2 NA 2 NA NA 2 ...
> #imputacion
> ense$P87_7a[is.na(ense$P87_7a)]<-"No" 
> summary(ense$P87_7a)
         Sí          No     No sabe No contesta 
       3445       19640           1           3 
> 
> ##P87_12a CONSUMO MEDICINAS TA --- 1 Sí, 2 No,8 No sabe, 9 No contesta
> table (ense$P87_12a)

    1     2     8     9 
 5787 10067     6     3 
> ense$P87_12a <- factor(ense$P87_12a, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$P87_12a)

         Sí          No     No sabe No contesta 
       5787       10067           6           3 
> summary(ense$P87_12a)
         Sí          No     No sabe No contesta        NA's 
       5787       10067           6           3        7226 
> str (ense$P87_12a)
 Factor w/ 4 levels "Sí","No","No sabe",..: 1 2 2 2 2 NA 2 NA NA 2 ...
> #imputacion
> ense$P87_12a[is.na(ense$P87_12a)]<-"No" 
> summary(ense$P87_12a)
         Sí          No     No sabe No contesta 
       5787       17293           6           3 
> 
> ##P87_14a CONSUMO MEDICINAS ANTIDEPRESIVOS --- 1 Sí, 2 No,8 No sabe, 9 No contesta  
> table (ense$P87_14a)

    1     2     8     9 
 1540 14313     6     4 
> ense$P87_14a <- factor(ense$P87_14a, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$P87_14a)

         Sí          No     No sabe No contesta 
       1540       14313           6           4 
> summary(ense$P87_14a)
         Sí          No     No sabe No contesta        NA's 
       1540       14313           6           4        7226 
> str (ense$P87_14a)
 Factor w/ 4 levels "Sí","No","No sabe",..: 2 2 2 2 2 NA 2 NA NA 2 ...
> #imputacion
> ense$P87_14a[is.na(ense$P87_14a)]<-"No" 
> summary(ense$P87_14a)
         Sí          No     No sabe No contesta 
       1540       21539           6           4 
> 
> ##P87_15a CONSUMO MEDICINAS NO EMBARAZO  --- 1 Sí, 2 No,8 No sabe, 9 No contesta     
> table (ense$P87_15a)

   1    2    8    9 
 334 4973    1    2 
> ense$P87_15a <- factor(ense$P87_15a, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$P87_15a)

         Sí          No     No sabe No contesta 
        334        4973           1           2 
> summary(ense$P87_15a)
         Sí          No     No sabe No contesta        NA's 
        334        4973           1           2       17779 
> str (ense$P87_15a)
 Factor w/ 4 levels "Sí","No","No sabe",..: NA NA 2 NA NA NA 2 NA NA NA ...
> #imputacion
> ense$P87_15a[is.na(ense$P87_15a)]<-"No" 
> summary(ense$P87_15a)
         Sí          No     No sabe No contesta 
        334       22752           1           2 
> 
> ##P87_17a CONSUMO MEDICINAS ADELGAZAR  --- 1 Sí, 2 No,8 No sabe, 9 No contesta
> table (ense$P87_17a)

    1     2     8     9 
   32 15824     3     4 
> ense$P87_17a <- factor(ense$P87_17a, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$P87_17a)

         Sí          No     No sabe No contesta 
         32       15824           3           4 
> summary(ense$P87_17a)
         Sí          No     No sabe No contesta        NA's 
         32       15824           3           4        7226 
> str (ense$P87_17a)
 Factor w/ 4 levels "Sí","No","No sabe",..: 2 2 2 2 2 NA 2 NA NA 2 ...
> #imputacion
> ense$P87_17a[is.na(ense$P87_17a)]<-"No" 
> summary(ense$P87_17a)
         Sí          No     No sabe No contesta 
         32       23050           3           4 
> 
> ##P87_18a CONSUMO MEDICINAS COLESTEROL  --- 1 Sí, 2 No,8 No sabe, 9 No contesta    
> table (ense$P87_18a)

    1     2     8     9 
 4124 11727     9     3 
> ense$P87_18a <- factor(ense$P87_18a, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$P87_18a)

         Sí          No     No sabe No contesta 
       4124       11727           9           3 
> summary(ense$P87_18a)
         Sí          No     No sabe No contesta        NA's 
       4124       11727           9           3        7226 
> str (ense$P87_18a)
 Factor w/ 4 levels "Sí","No","No sabe",..: 1 2 1 2 1 NA 2 NA NA 2 ...
> #imputacion
> ense$P87_18a[is.na(ense$P87_18a)]<-"No" 
> summary(ense$P87_18a)
         Sí          No     No sabe No contesta 
       4124       18953           9           3 
> 
> ##P87_19a CONSUMO MEDICINAS DM  --- 1 Sí, 2 No,8 No sabe, 9 No contesta         
> table (ense$P87_19a)

    1     2     8     9 
 2030 13827     3     3 
> ense$P87_19a <- factor(ense$P87_19a, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$P87_19a)

         Sí          No     No sabe No contesta 
       2030       13827           3           3 
> summary(ense$P87_19a)
         Sí          No     No sabe No contesta        NA's 
       2030       13827           3           3        7226 
> str (ense$P87_19a)
 Factor w/ 4 levels "Sí","No","No sabe",..: 1 2 2 2 2 NA 2 NA NA 2 ...
> #imputacion
> ense$P87_19a[is.na(ense$P87_19a)]<-"No" 
> summary(ense$P87_19a)
         Sí          No     No sabe No contesta 
       2030       21053           3           3 
> 
> ##P87_21a CONSUMO MEDICINAS HOMEOPATICOS --- 1 Sí, 2 No,8 No sabe, 9 No contesta     
> table (ense$P87_21a)

    1     2     8     9 
  154 15701     5     3 
> ense$P87_21a <- factor(ense$P87_21a, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$P87_21a)

         Sí          No     No sabe No contesta 
        154       15701           5           3 
> summary(ense$P87_21a)
         Sí          No     No sabe No contesta        NA's 
        154       15701           5           3        7226 
> str (ense$P87_21a)
 Factor w/ 4 levels "Sí","No","No sabe",..: 2 2 2 2 2 NA 2 NA NA 2 ...
> #imputacion
> ense$P87_21a[is.na(ense$P87_21a)]<-"No" 
> summary(ense$P87_21a)
         Sí          No     No sabe No contesta 
        154       22927           5           3 
> 
> ##P87_22a CONSUMO MEDICINAS NATURISTAS  --- 1 Sí, 2 No,8 No sabe, 9 No contesta
> table (ense$P87_22a)

    1     2     8     9 
  516 15338     6     3 
> ense$P87_22a <- factor(ense$P87_22a, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$P87_22a)

         Sí          No     No sabe No contesta 
        516       15338           6           3 
> summary(ense$P87_22a)
         Sí          No     No sabe No contesta        NA's 
        516       15338           6           3        7226 
> str (ense$P87_22a)
 Factor w/ 4 levels "Sí","No","No sabe",..: 2 2 2 2 2 NA 2 NA NA 2 ...
> #imputacion
> ense$P87_22a[is.na(ense$P87_22a)]<-"No" 
> summary(ense$P87_22a)
         Sí          No     No sabe No contesta 
        516       22564           6           3 
> 
> ##Q88 VACUNA GRIPE 
> table (ense$Q88)

    1     2 
 5327 17762 
> ense$Q88 <- factor(ense$Q88, labels = c("Sí", "No"))
> table (ense$Q88)

   Sí    No 
 5327 17762 
> 
> ##Q103 CITOLOGIA   
> table (ense$Q103)

   1    2    8    9 
9296 3034  153   11 
> ense$Q103 <- factor(ense$Q103, labels = c("Sí", "No","No sabe", "No contesta"))
> table (ense$Q103)

         Sí          No     No sabe No contesta 
       9296        3034         153          11 
> #imputacion
> ense$Q103[is.na(ense$Q103)]<-"No" 
> summary(ense$Q103)
         Sí          No     No sabe No contesta 
       9296       13629         153          11 
> 
> ##R108_1 FALTA ATENCION MEDICA POR PROB ECONOMICOS 
> #1 Sí, 2 No, 3 No lo he necesitado, 8 No sabe, 9 No contesta
> table (ense$R108_1)

    1     2     3     8     9 
  525 21797   760     5     2 
> ense$R108_1 <- factor(ense$R108_1, labels = c("Sí", "No", "No lo he necesitado", "No sabe", "No contesta"))
> summary (ense$R108_1)
                 Sí                  No No lo he necesitado             No sabe         No contesta 
                525               21797                 760                   5                   2 
> str(ense$R108_1)
 Factor w/ 5 levels "Sí","No","No lo he necesitado",..: 2 2 2 2 2 2 2 2 2 2 ...
> table (ense$R108_1)

                 Sí                  No No lo he necesitado             No sabe         No contesta 
                525               21797                 760                   5                   2 
> 
> ##T112 ACTIVIDAD FÍSICA 
> #1 No hago ejercicio. El tiempo libre lo ocupo de forma casi completamente sedentaria 2 Hago alguna actividad física o deportiva ocasional 3 Hago actividad física varias veces al mes 4 Hago entrenamiento deportivo o físico varias veces a la semana 8 No sabe 9 No contesta
> ense$T112 <- factor(ense$T112, labels = c("No hago ejercicio", "Alguna actividad física", "Varias veces al mes", "Varias veces a la semana", "No sabe", "No contesta"))
> str (ense$T112)
 Factor w/ 6 levels "No hago ejercicio",..: 1 1 2 2 3 3 1 1 1 1 ...
> summary(ense$T112)
       No hago ejercicio  Alguna actividad física      Varias veces al mes Varias veces a la semana                  No sabe 
                    8878                     9042                     2547                     2612                        3 
             No contesta 
                       7 
> table (ense$T112)

       No hago ejercicio  Alguna actividad física      Varias veces al mes Varias veces a la semana                  No sabe 
                    8878                     9042                     2547                     2612                        3 
             No contesta 
                       7 
> 
> ##V121 Fuma 6 cat 
> table (ense$V121)

    1     2     3     4     8     9 
 4903   495  5962 11707     3    19 
> ense$V121 <- factor(ense$V121, labels = c("A diario", "No a diario", "Ha fumado antes", "Nunca ha fumado de forma habitual", "No sabe", "No contesta"))
> table (ense$V121)

                         A diario                       No a diario                   Ha fumado antes 
                             4903                               495                              5962 
Nunca ha fumado de forma habitual                           No sabe                       No contesta 
                            11707                                 3                                19 
> 
> ##Y133 cuidado personas mayores 4 cat
> table (ense$Y133)

    1     2     8     9 
 2548 20526     4    11 
> ense$Y133 <- factor(ense$Y133, labels = c("Sí", "No", "No sabe", "No contesta"))
> table (ense$Y133)

         Sí          No     No sabe No contesta 
       2548       20526           4          11 
> 
> summary (ense)
    SEXOa           EDADa                                 A11_i                            E1_1              G21       
 hombre:10595   Min.   : 15.00   Trabajando                  :9919   Nacidos en España       :20846   Muy bueno: 4190  
 mujer :12494   1st Qu.: 39.00   En desempleo                :2487   Nacidos en el extranjero: 2243   Bueno    :11145  
                Median : 53.00   Jubilado/a,prejubilado/a    :6608                                    Regular  : 5531  
                Mean   : 53.44   Estudiando                  :1309                                    Malo     : 1724  
                3rd Qu.: 68.00   Incapacitado/a para trabajar: 582                                    Muy malo :  499  
                Max.   :103.00   Las labores del hogar       :2156                                                     
                                 Otros                       :  28                                                     
     G25c_1      G25c_2     G25c_11    G25c_12       G25c_26          GHQ12                   N48        O78       
 Sí     : 6244   Sí:  530   Sí: 1154   Sí: 2266   Sí     : 1146   Min.   : 0.000   Ultimas 4 sem: 7120   Sí: 6901  
 No     :16843   No:22559   No:21935   No:20823   No     :21942   1st Qu.: 0.000   4sem-12meses :11956   No:16188  
 No sabe:    2                                    No sabe:    1   Median : 0.000   Más de 12m   : 3972             
                                                                  Mean   : 1.462   Nunca        :   41             
                                                                  3rd Qu.: 2.000                                   
                                                                  Max.   :12.000                                   
                                                                                                                   
         P87_2a              P87_7a             P87_12a             P87_14a             P87_15a             P87_17a     
 Sí         : 8157   Sí         : 3445   Sí         : 5787   Sí         : 1540   Sí         :  334   Sí         :   32  
 No         :14929   No         :19640   No         :17293   No         :21539   No         :22752   No         :23050  
 No sabe    :    1   No sabe    :    1   No sabe    :    6   No sabe    :    6   No sabe    :    1   No sabe    :    3  
 No contesta:    2   No contesta:    3   No contesta:    3   No contesta:    4   No contesta:    2   No contesta:    4  
                                                                                                                        
                                                                                                                        
                                                                                                                        
        P87_18a             P87_19a             P87_21a             P87_22a      Q88                 Q103      
 Sí         : 4124   Sí         : 2030   Sí         :  154   Sí         :  516   Sí: 5327   Sí         : 9296  
 No         :18953   No         :21053   No         :22927   No         :22564   No:17762   No         :13629  
 No sabe    :    9   No sabe    :    3   No sabe    :    5   No sabe    :    6              No sabe    :  153  
 No contesta:    3   No contesta:    3   No contesta:    3   No contesta:    3              No contesta:   11  
                                                                                                               
                                                                                                               
                                                                                                               
                 R108_1                            T112                                     V121                Y133      
 Sí                 :  525   No hago ejercicio       :8878   A diario                         : 4903   Sí         : 2548  
 No                 :21797   Alguna actividad física :9042   No a diario                      :  495   No         :20526  
 No lo he necesitado:  760   Varias veces al mes     :2547   Ha fumado antes                  : 5962   No sabe    :    4  
 No sabe            :    5   Varias veces a la semana:2612   Nunca ha fumado de forma habitual:11707   No contesta:   11  
 No contesta        :    2   No sabe                 :   3   No sabe                          :    3                      
                             No contesta             :   7   No contesta                      :   19                      
                                                                                                                          
                  GHQ12_rec    
 No morbilidad psíquica:18688  
 Sí morbilidad psíquica: 4401

				
			

Explicación de resultados del script

  • Demografía:
    • SEXOa: De los 23,089 encuestados, 10,595 son hombres y 12,494 son mujeres. Esto indica una mayor participación femenina en la encuesta.
    • EDADa: Las edades varían de 15 a 103 años, con una mediana de 53 años. Esto sugiere una muestra de edad bastante amplia y posiblemente una población envejecida.
  • Salud y Condiciones Médicas:
    • G21 (Estado de Salud): Una mayoría de los encuestados califica su salud como «Buena» (11,145 personas), seguido por «Regular» (5,531 personas) y «Muy buena» (4,190 personas). Esto indica que la mayoría de los encuestados percibe su salud de manera positiva.
    • G25c_1 (Tensión Alta): De los encuestados, 6,244 informaron tener tensión alta, mientras que 16,843 no la tienen o no reportaron tenerla.
    • G25c_12 (Diabetes): 2,266 personas indicaron tener diabetes, en comparación con 20,823 que no la tienen o no reportaron tenerla.
  • Morbilidad Psíquica (GHQ12):
    • La recategorización de GHQ12 en GHQ12_rec muestra que 18,688 personas no presentan signos de morbilidad psíquica, mientras que 4,401 sí presentan. Esto podría ser un indicador importante para investigaciones relacionadas con la salud mental en la población.
  • Salud y Estilo de Vida:
    • O78 (Uso de Servicios de Urgencias): 6,901 personas usaron servicios de urgencias en los últimos 12 meses, mientras que 16,188 no lo hicieron.
    • V121 (Hábito de Fumar): Se observa una diversidad en los hábitos de fumar: 4,903 fuman a diario, 495 no fuman a diario, 5,962 han fumado antes, y 11,707 nunca han fumado de forma habitual.
    • T112 (Actividad Física): 8,878 personas no hacen ejercicio, 9,042 realizan alguna actividad física, 2,547 varias veces al mes, y 2,612 varias veces a la semana. Esto proporciona una visión del nivel de actividad física entre los encuestados.
  • Otras Observaciones:
    • Medicamentos y Tratamientos (P87 series): Se observan datos sobre el consumo de diferentes tipos de medicamentos, como medicinas para el dolor, tranquilizantes, medicamentos para la tensión arterial, antidepresivos, etc. Estos datos son importantes para comprender los patrones de medicación en la población.
    • Q88 (Vacuna Gripe): 5,327 personas se vacunaron contra la gripe, mientras que 17,762 no lo hicieron.

En resumen, estos datos ofrecen una visión integral de la salud, el estilo de vida y las características demográficas de los encuestados. Los patrones observados en las respuestas pueden ser útiles para formular políticas de salud pública, realizar investigaciones adicionales y entender mejor los aspectos de la salud y el bienestar en la población española.

Plots Script

				
					install.packages("ggplot2")
install.packages("knitr")
library(ggplot2)
library(knitr)
# Tabla para la distribución del sexo
kable(table(ense$SEXOa), caption = "Distribución por Sexo")

# Tabla para el estado de salud
kable(table(ense$G21), caption = "Distribución del Estado de Salud")
# Histograma de Edades
ggplot(ense, aes(x = EDADa)) +
  geom_histogram(binwidth = 5, fill = "blue", color = "black") +
  theme_minimal() +
  labs(title = "Distribución de Edades", x = "Edad", y = "Frecuencia")

# Gráfico de barras para el estado de salud
ggplot(ense, aes(x = G21)) +
  geom_bar(fill = "orange", color = "black") +
  theme_minimal() +
  labs(title = "Estado de Salud de los Encuestados", x = "Estado de Salud", y = "Frecuencia")

# Gráfico de barras para morbilidad psíquica
ggplot(ense, aes(x = GHQ12_rec)) +
  geom_bar(fill = "green", color = "black") +
  theme_minimal() +
  labs(title = "Morbilidad Psíquica", x = "Morbilidad Psíquica", y = "Frecuencia")
# Cargar las bibliotecas necesarias
install.packages("ggplot2")
install.packages("knitr")
library(ggplot2)
library(knitr)

# Función para crear un gráfico de barras para variables categóricas
plot_categorical <- function(data, variable, title) {
  ggplot(data, aes_string(x = variable)) +
    geom_bar(fill = "skyblue", color = "black") +
    theme_minimal() +
    labs(title = title, x = variable, y = "Frecuencia")
}

# Función para crear histograma para variables numéricas
plot_numeric <- function(data, variable, binwidth, title) {
  ggplot(data, aes_string(x = variable)) +
    geom_histogram(binwidth = binwidth, fill = "coral", color = "black") +
    theme_minimal() +
    labs(title = title, x = variable, y = "Frecuencia")
}

# Visualización de variables categóricas
categorical_vars <- c("SEXOa", "A11_i", "E1_1", "G21", "O78", "V121", "Y133", "GHQ12_rec")
for (var in categorical_vars) {
  print(plot_categorical(ense, var, paste("Distribución de", var)))
}

# Visualización de variables numéricas
numeric_vars <- c("EDADa", "GHQ12")
for (var in numeric_vars) {
  print(plot_numeric(ense, var, 5, paste("Distribución de", var)))
}

# Crear tablas para las primeras 5 variables categóricas
for (var in head(categorical_vars, 5)) {
  cat_var_table <- table(ense[[var]])
  kable(cat_var_table, caption = paste("Tabla de Frecuencia de", var))
}

				
			

Plots

El cuidado de personas mayores parece estar asociado con un aumento en el riesgo de morbilidad psíquica, lo que subraya la importancia de brindar apoyo adecuado a los cuidadores.

Manuel Medina Pérez
Supervisor de Urgencias en Hospital de Antequera - Enfermero

Siguientes Títulos