## Cargando paquete requerido: splines
## Cargando paquete requerido: RcmdrMisc
## Cargando paquete requerido: car
## Cargando paquete requerido: carData
## Cargando paquete requerido: sandwich
## Cargando paquete requerido: effects
## lattice theme set by effectsTheme()
## See ?effectsTheme for details.
## The Commander GUI is launched only in interactive sessions
##
## Attaching package: 'Rcmdr'
## The following object is masked from 'package:base':
##
## errorCondition
> library(ggplot2)
> library(e1071)
Attaching package: 'e1071'
The following object is masked from 'package:ggplot2':
element
> library(readxl)
> DATATEST <- read_excel("C:/Users/USER/Downloads/Estadístco/DATOSEST.xlsx", sheet = "Sheet")
> summary (DATATEST)
Individuo Edad Genero Severidad_de_Síntomas
Length:201 Min. :18.00 Length:201 Length:201
Class :character 1st Qu.:31.00 Class :character Class :character
Mode :character Median :43.00 Mode :character Mode :character
Mean :43.32
3rd Qu.:56.00
Max. :69.00
Hospitalizado Dias_para_la_recuperacion Nivel_de_fatiga
Length:201 Min. : 8.00 Min. :1.00
Class :character 1st Qu.: 50.00 1st Qu.:1.00
Mode :character Median :107.00 Median :3.00
Mean : 95.86 Mean :3.01
3rd Qu.:142.00 3rd Qu.:4.00
Max. :179.00 Max. :5.00
Problemas_respiratorios Niebla_mental Pérdida_del_gusto_y_el_olfato
Length:201 Length:201 Length:201
Class :character Class :character Class :character
Mode :character Mode :character Mode :character
Nivel_de_actividad_física Impacto_en_la_salud_mental
Length:201 Min. :1.000
Class :character 1st Qu.:2.000
Mode :character Median :3.000
Mean :2.935
3rd Qu.:4.000
Max. :5.000
Riesgo_de_covid_prolongado
Length:201
Class :character
Mode :character
GENERACION ESTADISTICOS POR EDAD
> stats_edad <- data.frame(
+ Variable = "Edad",
+ Media = mean(DATATEST$Edad, na.rm = TRUE),
+ Mediana = median(DATATEST$Edad, na.rm = TRUE),
+ Desv_Std = sd(DATATEST$Edad, na.rm = TRUE),
+ Varianza = var(DATATEST$Edad, na.rm = TRUE),
+ CV = (sd(DATATEST$Edad, na.rm = TRUE) / mean(DATATEST$Edad, na.rm = TRUE)),
+ MEDA = median(abs(DATATEST$Edad - median(DATATEST$Edad, na.rm = TRUE)), na.rm = TRUE),
+ Asimetria = skewness(DATATEST$Edad, na.rm = TRUE),
+ Curtosis = kurtosis(DATATEST$Edad, na.rm = TRUE)
+ )
> print(stats_edad)
Variable Media Mediana Desv_Std Varianza CV MEDA Asimetria
1 Edad 43.32338 43 14.97397 224.2199 0.3456326 13 -0.04373587
Curtosis
1 -1.195051
> cat("Medias recortadas Edad (0%, 2%, 5%, 10%):",
+ mean(DATATEST$Edad, na.rm = TRUE),
+ mean(DATATEST$Edad, trim = 0.02, na.rm = TRUE),
+ mean(DATATEST$Edad, trim = 0.05, na.rm = TRUE),
+ mean(DATATEST$Edad, trim = 0.10, na.rm = TRUE), "\n")
Medias recortadas Edad (0%, 2%, 5%, 10%): 43.32338 43.31606 43.31492 43.37267
GENERACION HISTOGRAMA EDAD
> ggplot(DATATEST, aes(x = Edad)) +
+ geom_histogram(bins = 15, fill = "skyblue", color = "black", alpha = 0.7) +
+ labs(title = "Distribución de Edad", x = "Edad", y = "Frecuencia") +
+ theme_light()
GENERACIÓN ESTADISTICOS DIAS DE RECUPERACIÓN
> stats_dias <- data.frame(
+ Variable = "Días Recuperación",
+ Media = round(mean(DATATEST$Dias_para_la_recuperacion, na.rm = TRUE), 2),
+ Mediana = round(median(DATATEST$Dias_para_la_recuperacion, na.rm = TRUE), 2),
+ Desv_Std = round(sd(DATATEST$Dias_para_la_recuperacion, na.rm = TRUE), 2),
+ Varianza = var(DATATEST$Dias_para_la_recuperacion, na.rm = TRUE),
+ CV = (sd(DATATEST$Dias_para_la_recuperacion, na.rm = TRUE) / mean(DATATEST$Dias_para_la_recuperacion, na.rm =
+ TRUE)),
+ MEDA = median(abs(DATATEST$Dias_para_la_recuperacion - median(DATATEST$Dias_para_la_recuperacion, na.rm = TRUE)),
+ na.rm = TRUE),
+ Asimetria = round(skewness(DATATEST$Dias_para_la_recuperacion, na.rm = TRUE), 2),
+ Curtosis = round(kurtosis(DATATEST$Dias_para_la_recuperacion, na.rm = TRUE), 2)
+ )
> print(stats_dias)
Variable Media Mediana Desv_Std Varianza CV MEDA Asimetria
1 Días Recuperación 95.86 107 52.32 2737.694 0.5458514 45 -0.19
Curtosis
1 -1.32
GENERACIÓN GRAFICAS DIAS DE RECCUPERACIÓN
> ggplot(DATATEST, aes(x = Dias_para_la_recuperacion)) +
+ geom_histogram(bins = 20, fill = "salmon", color = "darkred", alpha = 0.6) +
+ labs(title = "Distribución de Días para la Recuperación", x = "Días", y = "Cantidad de Personas") +
+ theme_classic()
ESTADISTICOS NIVEL DE FATIGA
> stats_ordinales <- rbind(
+ data.frame(Variable = "Nivel Fatiga",
+ Mediana = median(DATATEST$Nivel_de_fatiga, na.rm=T),
+ Asimetria = skewness(DATATEST$Nivel_de_fatiga, na.rm=T)),
+ data.frame(Variable = "Salud Mental",
+ Mediana = median(DATATEST$Impacto_en_la_salud_mental, na.rm=T),
+ Asimetria = skewness(DATATEST$Impacto_en_la_salud_mental, na.rm=T))
+ )
> print(stats_ordinales)
Variable Mediana Asimetria
1 Nivel Fatiga 3 -0.11043994
2 Salud Mental 3 0.09257631
GENERACION HISTOGRAMA NIVEL DE FATIGA
> frec_fatiga <- table(DATATEST$Nivel_de_fatiga)
> barplot(frec_fatiga, main="Distribución Nivel de Fatiga", col="lightblue", border="white", xlab="Escala 1-5")
FRECUENCIAS SALUD MENTAL
> frec_saludm <- table(DATATEST$Impacto_en_la_salud_mental)
HISTOGRAMA SALUD MENTAL
> barplot(frec_saludm, main="Impacto en Salud Mental", col="lightblue", xlab="Nivel 1-5")
FRECUENCIAS SALUD MENTAL
> frec_genero <- table(DATATEST$Genero)
PASTEL SALUD MENTAL
> pie(frec_genero, main="Distribución por Género", col=c("pink", "blue", "green"),
+ labels=paste0(names(frec_genero), " (", round(prop.table(frec_genero)*100, 1), "%)"))
FRECUENCIA SEVERIDAD DE SINTOMAS
> frec_sev <- table(DATATEST$Severidad_de_Síntomas)
PASTEL SEVERIDAD DE SINTOMAS
> pie(frec_sev, main="Severidad de Síntomas", col=c("pink", "blue", "green"),
+ labels=paste0(names(frec_sev), " (", round(prop.table(frec_sev)*100, 1), "%)"))
FRECUENCIA HOSPITALIZAD
> frec_hosp <- table(DATATEST$Hospitalizado)
HISTOGRAMA HOSPITALIZADO
> barplot(frec_hosp, main="Distribución de Hospitalización", col="lightblue", xlab="¿Hospitalizado?")
FRECUENCIA RIESGO
> frec_riesgo <- table(DATATEST$Riesgo_de_covid_prolongado)
HISTOGRAMA RIESGO COVID PROLONGADO
> barplot(frec_riesgo, main="Riesgo de COVID Prolongado", col="lightblue")
RIESGO COVID PROLONGADO VS GENERO
> tabla_gen <- addmargins(table(DATATEST$Riesgo_de_covid_prolongado, DATATEST$Genero))
> prop_gen <- addmargins(round(prop.table(table(DATATEST$Riesgo_de_covid_prolongado, DATATEST$Genero)) * 100, 2))
> print(list(Frecuencia = tabla_gen, Porcentaje = prop_gen))
$Frecuencia
Femenino Masculino Otro Sum
Alto 11 8 4 23
Bajo 49 53 5 107
Medio 37 30 4 71
Sum 97 91 13 201
$Porcentaje
Femenino Masculino Otro Sum
Alto 5.47 3.98 1.99 11.44
Bajo 24.38 26.37 2.49 53.24
Medio 18.41 14.93 1.99 35.33
Sum 48.26 45.28 6.47 100.01
GRAFICO GENERO VS RIESGO DE COVID PROLONGADO
> ggplot(DATATEST, aes(x = Genero, fill = Riesgo_de_covid_prolongado)) +
+ geom_bar(position = "stack") +
+ labs(title = "Riesgo de COVID Prolongado según Género", fill = "Nivel de Riesgo") +
+ theme_minimal()
TABLA RIESFO PROLONGAADO VS HOSPITALIZACION
> tabla_hosp_biv <- addmargins(table(DATATEST$Riesgo_de_covid_prolongado, DATATEST$Hospitalizado))
> print(tabla_hosp_biv)
No Sí Sum
Alto 14 9 23
Bajo 80 27 107
Medio 57 14 71
Sum 151 50 201
HISTOGRAMA BIVARIADO HOSPITALIZADO VS RIESGO DE COVID PROLONGADO
> ggplot(DATATEST, aes(x = Hospitalizado, fill = Riesgo_de_covid_prolongado)) +
+ geom_bar(position = "dodge", color = "white") +
+ scale_fill_brewer(palette = "Set2") +
+ labs(title = "Relación Hospitalización y Riesgo de COVID", fill = "Nivel de Riesgo") +
+ theme_minimal()
TABLA NIEVABLA MENTAL VS SEVERIDAD DE SINTOMAS
> tabla_niebla <- addmargins(table(DATATEST$Severidad_de_Síntomas, DATATEST$Niebla_mental))
> prop_niebla_fila <- round(prop.table(table(DATATEST$Severidad_de_Síntomas, DATATEST$Niebla_mental), margin = 1) *
+ 100, 2)
> print(list(Absoluta = tabla_niebla, Porcentaje_Fila = prop_niebla_fila))
$Absoluta
No Sí Sum
Leve 98 32 130
Moderado 40 11 51
Severo 15 5 20
Sum 153 48 201
$Porcentaje_Fila
No Sí
Leve 75.38 24.62
Moderado 78.43 21.57
Severo 75.00 25.00
RIESGO DE COVID PROLONGADO VS PROBLEMAS RESPIRATORIOS
> tabla_resp <- table(DATATEST$Riesgo_de_covid_prolongado, DATATEST$Problemas_respiratorios)
> prop_resp_col <- round(prop.table(tabla_resp, margin = 2) * 100, 2)
> print(list(Porcentaje_Columna = prop_resp_col))
$Porcentaje_Columna
No Sí
Alto 13.29 6.90
Bajo 51.75 56.90
Medio 34.97 36.21