Influencias Psicosociales y de Estilo de Vida en el Bienestar de Adultos Urbanos

La recopilación de estos datos estádiseñadapara facilitar la investigación multidisciplinaria sobre cómo los factores psicosociales y de estilo de vida impactan el bienestar emocional y físico de los adultos que viven en entornos urbanos. Esta recopilación de datos proporciona una amplia gama de indicadores que abarcan desde características demográficas básicas y condiciones socioeconómicas hasta aspectos detallados de la salud mental y física.El propósito de este trabajoes permitir a investigadores y profesionales de la salud explorar las complejas interacciones entre el entorno urbano y el bienestar individual, identificando patrones que podrían ser útiles para el desarrollo de políticas públicas más efectivas en salud mental, promoción de la actividad física, y programas de soporte social. Además, ofrece la oportunidad de examinar cómo variables como el estrés, la ansiedad, y la satisfacción vital influyen en la calidad de vida general, facilitando así el diseño de intervenciones más personalizadas y dirigidas.

Etapa 1: Importación y Limpieza de Datos

Importación de librerías

library(ggcorrplot)
## Loading required package: ggplot2
library(readxl)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ lubridate 1.9.3     ✔ tibble    3.2.1
## ✔ purrr     1.0.2     ✔ tidyr     1.3.1
## ✔ readr     2.1.5
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(Amelia)
## Loading required package: Rcpp
## ## 
## ## Amelia II: Multiple Imputation
## ## (Version 1.8.2, built: 2024-04-10)
## ## Copyright (C) 2005-2024 James Honaker, Gary King and Matthew Blackwell
## ## Refer to http://gking.harvard.edu/amelia/ for more information
## ##
library(janitor)
## 
## Attaching package: 'janitor'
## 
## The following objects are masked from 'package:stats':
## 
##     chisq.test, fisher.test
library(magrittr)
## 
## Attaching package: 'magrittr'
## 
## The following object is masked from 'package:purrr':
## 
##     set_names
## 
## The following object is masked from 'package:tidyr':
## 
##     extract
library(ggplot2)
library(dplyr)
library(pastecs)
## 
## Attaching package: 'pastecs'
## 
## The following object is masked from 'package:magrittr':
## 
##     extract
## 
## The following object is masked from 'package:tidyr':
## 
##     extract
## 
## The following objects are masked from 'package:dplyr':
## 
##     first, last

Importación de Datos

# Leer el archivo de Excel
datos<- read_excel("Datos_Final.xlsx")

Resúmen de Datos y Visualización de encabezados

summary(datos)
##        ID             Edad          Género          Nivel Educativo   
##  Min.   :  1.0   Min.   :18.00   Length:845         Length:845        
##  1st Qu.:206.0   1st Qu.:31.00   Class :character   Class :character  
##  Median :422.0   Median :45.00   Mode  :character   Mode  :character  
##  Mean   :422.2   Mean   :43.97                                        
##  3rd Qu.:635.0   3rd Qu.:56.00                                        
##  Max.   :845.0   Max.   :69.00                                        
##  NA's   :84      NA's   :84                                           
##  Estado Civil        Ocupación            Ingresos        Estrés      
##  Length:845         Length:845         Min.   : 506   Min.   : 1.000  
##  Class :character   Class :character   1st Qu.:1804   1st Qu.: 3.000  
##  Mode  :character   Mode  :character   Median :2968   Median : 6.000  
##                                        Mean   :2862   Mean   : 5.573  
##                                        3rd Qu.:3974   3rd Qu.: 8.000  
##                                        Max.   :4998   Max.   :10.000  
##                                        NA's   :84     NA's   :84      
##     Ansiedad        Depresión      Satisfacción con la vida Soporte Social  
##  Min.   : 1.000   Min.   : 1.000   Min.   : 1.00            Min.   : 1.000  
##  1st Qu.: 3.000   1st Qu.: 3.000   1st Qu.: 3.00            1st Qu.: 3.000  
##  Median : 6.000   Median : 6.000   Median : 5.00            Median : 6.000  
##  Mean   : 5.551   Mean   : 5.594   Mean   : 5.49            Mean   : 5.548  
##  3rd Qu.: 8.000   3rd Qu.: 8.000   3rd Qu.: 8.00            3rd Qu.: 8.000  
##  Max.   :10.000   Max.   :10.000   Max.   :10.00            Max.   :10.000  
##  NA's   :84       NA's   :84       NA's   :84               NA's   :84      
##      Sueño        Actividad Física Consumo de Agua    Felicidad     
##  Min.   : 1.000   Min.   : 1.000   Min.   : 1.000   Min.   : 1.000  
##  1st Qu.: 3.000   1st Qu.: 3.000   1st Qu.: 3.000   1st Qu.: 3.000  
##  Median : 5.000   Median : 5.000   Median : 6.000   Median : 6.000  
##  Mean   : 5.523   Mean   : 5.434   Mean   : 5.653   Mean   : 5.548  
##  3rd Qu.: 8.000   3rd Qu.: 8.000   3rd Qu.: 8.000   3rd Qu.: 8.000  
##  Max.   :10.000   Max.   :10.000   Max.   :10.000   Max.   :10.000  
##  NA's   :84       NA's   :84       NA's   :84       NA's   :84      
##     Estatura    
##  Min.   :150.0  
##  1st Qu.:162.0  
##  Median :176.0  
##  Mean   :174.9  
##  3rd Qu.:187.0  
##  Max.   :199.0  
##  NA's   :84
dim(datos)
## [1] 845  17
str(datos)
## tibble [845 × 17] (S3: tbl_df/tbl/data.frame)
##  $ ID                      : num [1:845] 1 2 3 4 NA 6 7 8 9 10 ...
##  $ Edad                    : num [1:845] 56 69 46 32 60 25 38 56 36 40 ...
##  $ Género                  : chr [1:845] "Masculino" "Otro" "Masculino" "Masculino" ...
##  $ Nivel Educativo         : chr [1:845] "Primaria" "Universitario" "Posgrado" "Secundaria" ...
##  $ Estado Civil            : chr [1:845] "Casado" "Soltero" "Viudo" "Soltero" ...
##  $ Ocupación               : chr [1:845] "Empleado" "Desempleado" "Desempleado" "Estudiante" ...
##  $ Ingresos                : num [1:845] 2366 2496 1409 4805 3689 ...
##  $ Estrés                  : num [1:845] 4 9 10 3 8 1 9 9 10 2 ...
##  $ Ansiedad                : num [1:845] 4 9 NA 7 6 NA 5 1 1 9 ...
##  $ Depresión               : num [1:845] 3 2 NA 4 8 3 1 NA NA 1 ...
##  $ Satisfacción con la vida: num [1:845] NA 4 8 5 NA 9 10 NA 1 9 ...
##  $ Soporte Social          : num [1:845] 7 6 6 NA 3 3 10 9 8 5 ...
##  $ Sueño                   : num [1:845] NA NA 2 3 6 7 4 1 NA 9 ...
##  $ Actividad Física        : num [1:845] 5 8 5 NA 8 2 3 9 5 5 ...
##  $ Consumo de Agua         : num [1:845] 4 8 NA 7 10 NA 10 5 7 4 ...
##  $ Felicidad               : num [1:845] 1 5 8 7 5 3 1 7 3 4 ...
##  $ Estatura                : num [1:845] 196 172 NA 184 174 181 171 157 187 167 ...

Segun el resumen de los datos se puede observar que se tienen 13/17 variables cuantitativas y 4/17 variables cualitativas.

se puede notar que la variable ID presenta NAs y se presenta de manera numérica pero debe tratarse como cadena debido a que los resumenes numericos que se puden extraer son insignificantes, al tener NAs pero ser enumeración se puede generar nuevamente.

# Eliminar la columna "ID" del dataframe original
datos_sin_ID <- select(datos, -ID)

# Generar una nueva secuencia numérica del mismo tamaño que el dataframe
nueva_ID <- 1:nrow(datos)

# Agregar la nueva columna "ID" al dataframe
nuevo_datos <- bind_cols(ID = nueva_ID, datos_sin_ID)

# Verificar el nuevo dataframe
print(head(nuevo_datos))
## # A tibble: 6 × 17
##      ID  Edad Género  `Nivel Educativo` `Estado Civil` Ocupación Ingresos Estrés
##   <int> <dbl> <chr>   <chr>             <chr>          <chr>        <dbl>  <dbl>
## 1     1    56 Mascul… Primaria          Casado         Empleado      2366      4
## 2     2    69 Otro    Universitario     Soltero        Desemple…     2496      9
## 3     3    46 Mascul… Posgrado          Viudo          Desemple…     1409     10
## 4     4    32 Mascul… Secundaria        Soltero        Estudian…     4805      3
## 5     5    60 Femeni… Universitario     Casado         Empleado      3689      8
## 6     6    25 <NA>    Posgrado          Viudo          Autónomo      1270      1
## # ℹ 9 more variables: Ansiedad <dbl>, Depresión <dbl>,
## #   `Satisfacción con la vida` <dbl>, `Soporte Social` <dbl>, Sueño <dbl>,
## #   `Actividad Física` <dbl>, `Consumo de Agua` <dbl>, Felicidad <dbl>,
## #   Estatura <dbl>
nuevo_datos$`ID` <- as.character(nuevo_datos$`ID`)

Se visualizan nuevamente el tipo de datos y se limpian los nombres de las variables.

str(datos)
## tibble [845 × 17] (S3: tbl_df/tbl/data.frame)
##  $ ID                      : num [1:845] 1 2 3 4 NA 6 7 8 9 10 ...
##  $ Edad                    : num [1:845] 56 69 46 32 60 25 38 56 36 40 ...
##  $ Género                  : chr [1:845] "Masculino" "Otro" "Masculino" "Masculino" ...
##  $ Nivel Educativo         : chr [1:845] "Primaria" "Universitario" "Posgrado" "Secundaria" ...
##  $ Estado Civil            : chr [1:845] "Casado" "Soltero" "Viudo" "Soltero" ...
##  $ Ocupación               : chr [1:845] "Empleado" "Desempleado" "Desempleado" "Estudiante" ...
##  $ Ingresos                : num [1:845] 2366 2496 1409 4805 3689 ...
##  $ Estrés                  : num [1:845] 4 9 10 3 8 1 9 9 10 2 ...
##  $ Ansiedad                : num [1:845] 4 9 NA 7 6 NA 5 1 1 9 ...
##  $ Depresión               : num [1:845] 3 2 NA 4 8 3 1 NA NA 1 ...
##  $ Satisfacción con la vida: num [1:845] NA 4 8 5 NA 9 10 NA 1 9 ...
##  $ Soporte Social          : num [1:845] 7 6 6 NA 3 3 10 9 8 5 ...
##  $ Sueño                   : num [1:845] NA NA 2 3 6 7 4 1 NA 9 ...
##  $ Actividad Física        : num [1:845] 5 8 5 NA 8 2 3 9 5 5 ...
##  $ Consumo de Agua         : num [1:845] 4 8 NA 7 10 NA 10 5 7 4 ...
##  $ Felicidad               : num [1:845] 1 5 8 7 5 3 1 7 3 4 ...
##  $ Estatura                : num [1:845] 196 172 NA 184 174 181 171 157 187 167 ...
names(datos)
##  [1] "ID"                       "Edad"                    
##  [3] "Género"                   "Nivel Educativo"         
##  [5] "Estado Civil"             "Ocupación"               
##  [7] "Ingresos"                 "Estrés"                  
##  [9] "Ansiedad"                 "Depresión"               
## [11] "Satisfacción con la vida" "Soporte Social"          
## [13] "Sueño"                    "Actividad Física"        
## [15] "Consumo de Agua"          "Felicidad"               
## [17] "Estatura"
datos %<>% clean_names
names(datos)
##  [1] "id"                       "edad"                    
##  [3] "genero"                   "nivel_educativo"         
##  [5] "estado_civil"             "ocupacion"               
##  [7] "ingresos"                 "estres"                  
##  [9] "ansiedad"                 "depresion"               
## [11] "satisfaccion_con_la_vida" "soporte_social"          
## [13] "sueno"                    "actividad_fisica"        
## [15] "consumo_de_agua"          "felicidad"               
## [17] "estatura"

Ahora, segun el resumen de los datos se puede observar que se tienen 12/17 variables cuantitativas y 5/17 variables cualitativas.

Niveles de las variables cualitativas

unique(datos$genero)
## [1] "Masculino" "Otro"      "Femenino"  NA
unique(datos$nivel_educativo)
## [1] "Primaria"      "Universitario" "Posgrado"      "Secundaria"   
## [5] NA
unique(datos$estado_civil)
## [1] "Casado"     "Soltero"    "Viudo"      "Divorciado" NA
unique(datos$ocupacion)
## [1] "Empleado"    "Desempleado" "Estudiante"  "Autónomo"    NA

Tratamiento de los NA

Gráfico de datos faltantes

missmap(nuevo_datos, main="Mapa de Datos Faltantes")
## Warning: Unknown or uninitialised column: `arguments`.
## Unknown or uninitialised column: `arguments`.
## Warning: Unknown or uninitialised column: `imputations`.

Según el gráfico de datos faltantes se puede observar que un 9% de los datos son NA.

Pruebas de normalidad

ks_test <- function(x) {
  ks.test(x, "pnorm", mean = mean(x, na.rm = TRUE), sd = sd(x, na.rm = TRUE))$p.value
}

# Aplicar la prueba de Kolmogorov-Smirnov a todas las variables numéricas
normality_tests <- nuevo_datos %>%
  summarise(across(where(is.numeric), ~ ks_test(.x))) %>%
  pivot_longer(cols = everything(), names_to = "Variable", values_to = "P-Value")
## Warning: There were 12 warnings in `summarise()`.
## The first warning was:
## ℹ In argument: `across(where(is.numeric), ~ks_test(.x))`.
## Caused by warning in `ks.test.default()`:
## ! ties should not be present for the one-sample Kolmogorov-Smirnov test
## ℹ Run `dplyr::last_dplyr_warnings()` to see the 11 remaining warnings.
# Agregar una columna indicando si los datos son normales o no
normality_tests <- normality_tests %>%
  mutate(Normal = ifelse(`P-Value` < 0.05, "No", "Sí"))

# Mostrar los resultados
print(normality_tests)
## # A tibble: 12 × 3
##    Variable                 `P-Value` Normal
##    <chr>                        <dbl> <chr> 
##  1 Edad                      1.65e- 3 No    
##  2 Ingresos                  5.02e- 5 No    
##  3 Estrés                    2.27e- 8 No    
##  4 Ansiedad                  1.60e- 7 No    
##  5 Depresión                 6.58e- 9 No    
##  6 Satisfacción con la vida  4.08e- 8 No    
##  7 Soporte Social            2.86e- 9 No    
##  8 Sueño                     2.00e- 9 No    
##  9 Actividad Física          1.73e- 8 No    
## 10 Consumo de Agua           9.35e-11 No    
## 11 Felicidad                 5.04e- 7 No    
## 12 Estatura                  5.50e- 5 No

Segun los resultados de la prueba shapiro para la normalidad en las variables cuantitativas se concluye que los datos no son normales por lo que que se decide reemplazar los NA con la mediana y en las variables cualitativas por la moda.

# Función para rellenar variables cuantitativas con la mediana
rellenar_con_mediana <- function(x) {
  x[is.na(x)] <- median(x, na.rm = TRUE)
  return(x)
}

# Función para calcular la moda
calcular_moda <- function(x) {
  uniq_vals <- unique(na.omit(x))
  uniq_vals[which.max(tabulate(match(x, uniq_vals)))]
}

# Función para rellenar NA en variables cualitativas con la moda
rellenar_con_moda <- function(x) {
  moda <- calcular_moda(x)
  x[is.na(x)] <- moda
  return(x)
}

Ahora, se hace uso de las anteriores funciones para rellenar los NA en el data frame nuevo.

nuevo_datos <- nuevo_datos %>%
  mutate(across(where(is.numeric), rellenar_con_mediana)) %>%
  mutate(across(where(is.character), rellenar_con_moda)) %>%
  mutate(across(where(is.factor), ~ as.character(.) %>% rellenar_con_moda() %>% as.factor()))

# Verificar que no haya NA en el nuevo dataframe
missmap(nuevo_datos, main="Mapa de Datos Faltantes")
## Warning: Unknown or uninitialised column: `arguments`.
## Unknown or uninitialised column: `arguments`.
## Warning: Unknown or uninitialised column: `imputations`.

sum(is.na(nuevo_datos))
## [1] 0

Teniendo en cuenta el tratamiento de los NA y que ya no se presentan datos faltantes podemos proceder con el análisis.

Visualización de Datos limpios

names(nuevo_datos)
##  [1] "ID"                       "Edad"                    
##  [3] "Género"                   "Nivel Educativo"         
##  [5] "Estado Civil"             "Ocupación"               
##  [7] "Ingresos"                 "Estrés"                  
##  [9] "Ansiedad"                 "Depresión"               
## [11] "Satisfacción con la vida" "Soporte Social"          
## [13] "Sueño"                    "Actividad Física"        
## [15] "Consumo de Agua"          "Felicidad"               
## [17] "Estatura"
nuevo_datos %<>% clean_names
names(nuevo_datos)
##  [1] "id"                       "edad"                    
##  [3] "genero"                   "nivel_educativo"         
##  [5] "estado_civil"             "ocupacion"               
##  [7] "ingresos"                 "estres"                  
##  [9] "ansiedad"                 "depresion"               
## [11] "satisfaccion_con_la_vida" "soporte_social"          
## [13] "sueno"                    "actividad_fisica"        
## [15] "consumo_de_agua"          "felicidad"               
## [17] "estatura"
summary(nuevo_datos)
##       id                 edad          genero          nivel_educativo   
##  Length:845         Min.   :18.00   Length:845         Length:845        
##  Class :character   1st Qu.:33.00   Class :character   Class :character  
##  Mode  :character   Median :45.00   Mode  :character   Mode  :character  
##                     Mean   :44.08                                        
##                     3rd Qu.:55.00                                        
##                     Max.   :69.00                                        
##  estado_civil        ocupacion            ingresos        estres      
##  Length:845         Length:845         Min.   : 506   Min.   : 1.000  
##  Class :character   Class :character   1st Qu.:1939   1st Qu.: 3.000  
##  Mode  :character   Mode  :character   Median :2968   Median : 6.000  
##                                        Mean   :2873   Mean   : 5.615  
##                                        3rd Qu.:3861   3rd Qu.: 8.000  
##                                        Max.   :4998   Max.   :10.000  
##     ansiedad        depresion      satisfaccion_con_la_vida soporte_social  
##  Min.   : 1.000   Min.   : 1.000   Min.   : 1.000           Min.   : 1.000  
##  1st Qu.: 3.000   1st Qu.: 3.000   1st Qu.: 3.000           1st Qu.: 3.000  
##  Median : 6.000   Median : 6.000   Median : 5.000           Median : 6.000  
##  Mean   : 5.595   Mean   : 5.634   Mean   : 5.441           Mean   : 5.593  
##  3rd Qu.: 8.000   3rd Qu.: 8.000   3rd Qu.: 8.000           3rd Qu.: 8.000  
##  Max.   :10.000   Max.   :10.000   Max.   :10.000           Max.   :10.000  
##      sueno        actividad_fisica consumo_de_agua    felicidad     
##  Min.   : 1.000   Min.   : 1.000   Min.   : 1.000   Min.   : 1.000  
##  1st Qu.: 3.000   1st Qu.: 3.000   1st Qu.: 3.000   1st Qu.: 3.000  
##  Median : 5.000   Median : 5.000   Median : 6.000   Median : 6.000  
##  Mean   : 5.471   Mean   : 5.391   Mean   : 5.688   Mean   : 5.593  
##  3rd Qu.: 8.000   3rd Qu.: 8.000   3rd Qu.: 8.000   3rd Qu.: 8.000  
##  Max.   :10.000   Max.   :10.000   Max.   :10.000   Max.   :10.000  
##     estatura  
##  Min.   :150  
##  1st Qu.:163  
##  Median :176  
##  Mean   :175  
##  3rd Qu.:186  
##  Max.   :199
dim(nuevo_datos)
## [1] 845  17
str(nuevo_datos)
## tibble [845 × 17] (S3: tbl_df/tbl/data.frame)
##  $ id                      : chr [1:845] "1" "2" "3" "4" ...
##  $ edad                    : num [1:845] 56 69 46 32 60 25 38 56 36 40 ...
##  $ genero                  : chr [1:845] "Masculino" "Otro" "Masculino" "Masculino" ...
##  $ nivel_educativo         : chr [1:845] "Primaria" "Universitario" "Posgrado" "Secundaria" ...
##  $ estado_civil            : chr [1:845] "Casado" "Soltero" "Viudo" "Soltero" ...
##  $ ocupacion               : chr [1:845] "Empleado" "Desempleado" "Desempleado" "Estudiante" ...
##  $ ingresos                : num [1:845] 2366 2496 1409 4805 3689 ...
##  $ estres                  : num [1:845] 4 9 10 3 8 1 9 9 10 2 ...
##  $ ansiedad                : num [1:845] 4 9 6 7 6 6 5 1 1 9 ...
##  $ depresion               : num [1:845] 3 2 6 4 8 3 1 6 6 1 ...
##  $ satisfaccion_con_la_vida: num [1:845] 5 4 8 5 5 9 10 5 1 9 ...
##  $ soporte_social          : num [1:845] 7 6 6 6 3 3 10 9 8 5 ...
##  $ sueno                   : num [1:845] 5 5 2 3 6 7 4 1 5 9 ...
##  $ actividad_fisica        : num [1:845] 5 8 5 5 8 2 3 9 5 5 ...
##  $ consumo_de_agua         : num [1:845] 4 8 6 7 10 6 10 5 7 4 ...
##  $ felicidad               : num [1:845] 1 5 8 7 5 3 1 7 3 4 ...
##  $ estatura                : num [1:845] 196 172 176 184 174 181 171 157 187 167 ...
unique(nuevo_datos$genero)
## [1] "Masculino" "Otro"      "Femenino"
unique(nuevo_datos$nivel_educativo)
## [1] "Primaria"      "Universitario" "Posgrado"      "Secundaria"
unique(nuevo_datos$estado_civil)
## [1] "Casado"     "Soltero"    "Viudo"      "Divorciado"
unique(nuevo_datos$ocupacion)
## [1] "Empleado"    "Desempleado" "Estudiante"  "Autónomo"

Pruebas de Hipóteis

Correlación

Hipótesis nula (H0): La hipótesis nula en este caso sería que no hay correlación entre las dos variables evaluadas, es decir, que el coeficiente de correlación poblacional entre ‘Estrés’ y ‘Ansiedad’ es igual a cero (ρ = 0).

Hipótesis alternativa (H1): La hipótesis alternativa sugiere que sí existe una correlación significativa entre las variables ‘Estrés’ y ‘Ansiedad’. En términos prácticos, el coeficiente de correlación poblacional entre estas variables no es igual a cero (ρ ≠ 0).

correlacion <- cor.test(nuevo_datos$estres, nuevo_datos$ansiedad, method = "spearman")
## Warning in cor.test.default(nuevo_datos$estres, nuevo_datos$ansiedad, method =
## "spearman"): Cannot compute exact p-value with ties
# Mostrar resultados de la correlación
print(correlacion)
## 
##  Spearman's rank correlation rho
## 
## data:  nuevo_datos$estres and nuevo_datos$ansiedad
## S = 101761369, p-value = 0.7284
## alternative hypothesis: true rho is not equal to 0
## sample estimates:
##         rho 
## -0.01196309
correlacion <- cor(nuevo_datos %>% select(where(is.numeric)))
print(correlacion)
##                                  edad     ingresos       estres     ansiedad
## edad                      1.000000000  0.022507084 -0.022663635 -0.039601996
## ingresos                  0.022507084  1.000000000 -0.015939488 -0.022579629
## estres                   -0.022663635 -0.015939488  1.000000000 -0.011315969
## ansiedad                 -0.039601996 -0.022579629 -0.011315969  1.000000000
## depresion                 0.013737034  0.010224829  0.010748558 -0.005242774
## satisfaccion_con_la_vida -0.027085553 -0.039865760  0.007181799  0.014872722
## soporte_social           -0.009613738  0.026795917  0.006900329  0.004866209
## sueno                     0.033550792  0.016819356 -0.022383423  0.010549268
## actividad_fisica         -0.008511935 -0.002547278 -0.009945902 -0.009026905
## consumo_de_agua           0.013275091  0.054575069 -0.041379987 -0.001582623
## felicidad                 0.007471140  0.007982335  0.001214461  0.019243826
## estatura                 -0.040148126  0.029544095 -0.044603022 -0.016389794
##                             depresion satisfaccion_con_la_vida soporte_social
## edad                      0.013737034             -0.027085553   -0.009613738
## ingresos                  0.010224829             -0.039865760    0.026795917
## estres                    0.010748558              0.007181799    0.006900329
## ansiedad                 -0.005242774              0.014872722    0.004866209
## depresion                 1.000000000             -0.014100873   -0.033209334
## satisfaccion_con_la_vida -0.014100873              1.000000000    0.040120971
## soporte_social           -0.033209334              0.040120971    1.000000000
## sueno                    -0.014110096             -0.013954733    0.033982253
## actividad_fisica          0.059900828             -0.029083252    0.006653344
## consumo_de_agua          -0.015361086             -0.031425085    0.002732885
## felicidad                 0.050800472             -0.042694315   -0.053924028
## estatura                  0.023867448             -0.006786032   -0.043067324
##                                 sueno actividad_fisica consumo_de_agua
## edad                      0.033550792     -0.008511935     0.013275091
## ingresos                  0.016819356     -0.002547278     0.054575069
## estres                   -0.022383423     -0.009945902    -0.041379987
## ansiedad                  0.010549268     -0.009026905    -0.001582623
## depresion                -0.014110096      0.059900828    -0.015361086
## satisfaccion_con_la_vida -0.013954733     -0.029083252    -0.031425085
## soporte_social            0.033982253      0.006653344     0.002732885
## sueno                     1.000000000      0.005037824     0.080155090
## actividad_fisica          0.005037824      1.000000000    -0.023555620
## consumo_de_agua           0.080155090     -0.023555620     1.000000000
## felicidad                 0.023907067      0.004238055     0.031415540
## estatura                 -0.006489677      0.012674049     0.056107150
##                             felicidad     estatura
## edad                      0.007471140 -0.040148126
## ingresos                  0.007982335  0.029544095
## estres                    0.001214461 -0.044603022
## ansiedad                  0.019243826 -0.016389794
## depresion                 0.050800472  0.023867448
## satisfaccion_con_la_vida -0.042694315 -0.006786032
## soporte_social           -0.053924028 -0.043067324
## sueno                     0.023907067 -0.006489677
## actividad_fisica          0.004238055  0.012674049
## consumo_de_agua           0.031415540  0.056107150
## felicidad                 1.000000000  0.101397652
## estatura                  0.101397652  1.000000000
ggcorrplot(correlacion, lab = TRUE)

La prueba de correlación evalúa si hay una relación lineal significativa entre las variables ‘Estrés’ y ‘Ansiedad’. El resultado incluye el coeficiente de correlación de Spearman (r), el valor p (p-value), y el intervalo de confianza. Un valor p menor a 0.05 indica que hay evidencia suficiente para rechazar la hipótesis nula de que no hay correlación, sugiriendo que existe una relación significativa entre las dos variables.

Interpretación

El valor p (p-value) de 0.6717 es mayor que el nivel de significancia típico de 0.05. Por lo tanto, no hay suficiente evidencia para rechazar la hipótesis nula de que la correlación entre ‘Estrés’ y ‘Ansiedad’ es igual a cero. Esto sugiere que, en esta muestra, no se encuentra una correlación significativa entre estas dos variables. El coeficiente de correlación muestral es -0.01625554, lo que indica una correlación muy débil y cercana a cero. El intervalo de confianza también incluye el valor cero, lo que respalda la conclusión de que la correlación entre estas variables no es estadísticamente significativa.

Modelo de Regresión Lineal

Hipótesis nula (H0): La hipótesis nula para la prueba de regresión lineal es que el coeficiente de regresión de la variable independiente (‘Actividad Física’) es igual a cero, lo que significa que no hay relación entre la variable independiente y la variable dependiente (‘Felicidad’). En otras palabras, el modelo de regresión no explica la variabilidad de ‘Felicidad’ en función de ‘Actividad Física’.

Hipótesis alternativa (H1): La hipótesis alternativa es que el coeficiente de regresión de la variable independiente (‘Actividad Física’) no es igual a cero, lo que sugiere que hay una relación significativa entre ‘Actividad Física’ y ‘Felicidad’. En este caso, el modelo de regresión sí explica la variabilidad de ‘Felicidad’ en función de ‘Actividad Física’.

correlacion <- cor.test(nuevo_datos$actividad_fisica, nuevo_datos$felicidad, method = "spearman")
## Warning in cor.test.default(nuevo_datos$actividad_fisica,
## nuevo_datos$felicidad, : Cannot compute exact p-value with ties
# Mostrar resultados de la correlación
print(correlacion)
## 
##  Spearman's rank correlation rho
## 
## data:  nuevo_datos$actividad_fisica and nuevo_datos$felicidad
## S = 99928888, p-value = 0.8558
## alternative hypothesis: true rho is not equal to 0
## sample estimates:
##         rho 
## 0.006259967
modelo <- lm(felicidad ~ actividad_fisica, data = nuevo_datos)

# Mostrar un resumen del modelo
summary(modelo)
## 
## Call:
## lm(formula = felicidad ~ actividad_fisica, data = nuevo_datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4.6127 -2.5740  0.3959  2.4002  4.4260 
## 
## Coefficients:
##                  Estimate Std. Error t value Pr(>|t|)    
## (Intercept)      5.569716   0.210602  26.447   <2e-16 ***
## actividad_fisica 0.004301   0.034952   0.123    0.902    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.735 on 843 degrees of freedom
## Multiple R-squared:  1.796e-05,  Adjusted R-squared:  -0.001168 
## F-statistic: 0.01514 on 1 and 843 DF,  p-value: 0.9021
ggplot(nuevo_datos, aes(x = ansiedad, y = estres)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE, color = "blue") +
  labs(title = "Regresión entre Estrés y Ansiedad", x = "Ansiedad", y = "Estrés")
## `geom_smooth()` using formula = 'y ~ x'

La prueba de regresión lineal evalúa si ‘Actividad Física’ es un predictor significativo de ‘Felicidad’. El resumen del modelo incluye el valor de R cuadrado, los coeficientes del modelo, el valor p para cada coeficiente, y otros estadísticos. Un valor p menor a 0.05 para el coeficiente de ‘Actividad Física’ indica que esta variable es un predictor significativo de ‘Felicidad’, sugiriendo que cambios en ‘Actividad Física’ están asociados con cambios en ‘Felicidad’.

Estadísticas del modelo:

El error estándar residual es 2.837. El R cuadrado múltiple es extremadamente bajo (1.895e-05), lo que indica que el modelo explica muy poco de la variabilidad de la variable dependiente (‘Felicidad’) en función de la variable independiente (‘Actividad Física’). El p-value del estadístico F es 0.9095, lo que indica que el modelo en su conjunto no es significativo.

Interpretación:

La variable ‘Actividad Física’ no tiene un efecto significativo en la ‘Felicidad’ según los resultados del modelo de regresión. Esto se evidencia por el coeficiente de ‘actividad_fisica’ que no es significativamente diferente de cero (p-value = 0.91) y un R cuadrado muy bajo. El modelo en general no es significativo (p-value del estadístico F = 0.9095), lo que sugiere que la relación entre ‘Actividad Física’ y ‘Felicidad’ no es lineal o que otros factores no incluidos en el modelo pueden estar influyendo en la ‘Felicidad’.

Independencia de las variables (Chicuadrado)

Hipótesis Nula (Ho): No existe una asociación entre el género y el nivel educativo

Hipótesis Alternativa (H1): Existe una asociación entre esas dos variables categóricas

#Creamos una tabla de contingencia con las variables a estudiar
tabla_de_contingencia = table(nuevo_datos$genero , nuevo_datos$nivel_educativo)
#Aplicamos la prueba Chi-Cuadrado
resultado <- chisq.test(tabla_de_contingencia)
print(resultado)
## 
##  Pearson's Chi-squared test
## 
## data:  tabla_de_contingencia
## X-squared = 2.7887, df = 6, p-value = 0.8349
if (resultado$p.value < 0.05) {
   print("Se rechaza la hipótesis nula, por lo que se afirma que existe una asociación entre estas dos variables")
} else {
  print("No se rechaza la hipótesis nula. Por lo tanto, no es posible concluir que existe una asociación entre el género y el nivel educativo.")
}
## [1] "No se rechaza la hipótesis nula. Por lo tanto, no es posible concluir que existe una asociación entre el género y el nivel educativo."

Interpretación Teniendo en cuenta que el p-valor arrojado por la prueba es de 0.6666, es decir, es mayor que el nivel de significancia considerado en este estudio (0.05) no se rechaza la hipótesis nula, por lo que no es posible concluir que existe una asociación entre el género y el nivel educativo. Entonces, las variables género y nivel educativo son independientes.

Homogeneidad de dos variables categóricas (Chicuadrado)

Hipótesis Nula (Ho): La distribución de la ocupación es la misma para los diferentes estados civiles

Hipótesis Alternativa (H1): La distribución de la ocupación difiere entre los distintos estados civiles

#Creamos la tabla de contingencia
tabla_contingencia <- table(nuevo_datos$estado_civil , nuevo_datos$ocupacion)
#Aplicamos la prueba
resultado_prueba <- chisq.test(tabla_contingencia)
print(resultado_prueba)
## 
##  Pearson's Chi-squared test
## 
## data:  tabla_contingencia
## X-squared = 5.4107, df = 9, p-value = 0.7971
#Conclusiones
if (resultado_prueba$p.value < 0.05) {
   print("Se rechaza la hipótesis nula. Por lo que se afirma que la distribución de la ocupción no es homogénea entre los diferentes estados civiles")
} else {
  print("No se rechaza la hipótesis nula. Por lo que no es posible concluir que la distribución de ocupación sea homogénea entre los diferentes estados civiles")
}
## [1] "No se rechaza la hipótesis nula. Por lo que no es posible concluir que la distribución de ocupación sea homogénea entre los diferentes estados civiles"

Interpretación

Dado que el p-valor es igual a 0.79, no se rechaza la hipótesis nula y por lo tanto, se afirma que no es posible concluir que la distribución de ocupación sea homogénea entre los diferentes estados civiles.