library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.4 ✔ readr 2.1.5
## ✔ forcats 1.0.0 ✔ stringr 1.5.1
## ✔ ggplot2 3.5.2 ✔ tibble 3.2.1
## ✔ lubridate 1.9.4 ✔ tidyr 1.3.1
## ✔ purrr 1.0.4
## ── 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(summarytools)
## Warning in fun(libname, pkgname): couldn't connect to display ":0"
## system might not have X11 capabilities; in case of errors when using dfSummary(), set st_options(use.x11 = FALSE)
##
## Attaching package: 'summarytools'
##
## The following object is masked from 'package:tibble':
##
## view
library(janitor)
##
## Attaching package: 'janitor'
##
## The following objects are masked from 'package:stats':
##
## chisq.test, fisher.test
library(skimr)
Factores personales, laborales y de estilo de vida que explican el bienestar subjetivo: un análisis inferencial del nivel de satisfacción con la vida
Analizar qué factores personales, laborales y de estilo de vida explican el nivel de bienestar subjetivo en una muestra poblacional.
datos <- read_csv("base_bienestar_subjetivo(in).csv")
## Rows: 400 Columns: 14
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (8): sexo, nivel_educativo, estado_civil, hijos, trabaja_jornada_complet...
## dbl (6): edad, ingreso_mensual, horas_semana_responsabilidades, tiempo_libre...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
datos$bienestar_subjetivo_num <- as.numeric(datos$bienestar_subjetivo)
El bienestar subjetivo es un concepto fundamental en la psicología positiva que mide cómo las personas evalúan sus propias vidas en términos de satisfacción y emociones positivas. Según Diener et al. (1999), este enfoque es crucial porque reconoce que el bienestar no depende únicamente de factores externos como los ingresos o el estatus social, sino también de aspectos internos como las relaciones personales, el sentido de propósito y la percepción subjetiva de la calidad de vida. En su estudio, Diener y colaboradores utilizaron técnicas estadísticas inferenciales, como análisis de regresión y correlación, para analizar grandes muestras poblacionales e identificar variables que influyen significativamente en la felicidad y satisfacción personal. Los resultados evidenciaron que factores sociales y psicológicos tienen un impacto mayor en el bienestar que indicadores económicos. Además, observaron que la adaptación hedonista juega un papel importante en la evaluación del bienestar subjetivo.
Este enfoque integral fundamenta nuestro análisis, donde exploramos cómo variables personales, laborales y de estilo de vida se relacionan con el bienestar subjetivo en una muestra local. Utilizamos pruebas estadísticas como t-test, ANOVA, chi-cuadrado y correlaciones para validar estas asociaciones y aportar evidencia empírica que pueda apoyar políticas públicas orientadas a mejorar el bienestar de la población.
Referencia:
Diener, E., Suh, E. M., Lucas, R. E., & Smith, H. L. (1999).
Subjective well-being: Three decades of progress. Psychological
Bulletin, 125(2), 276–302.
https://doi.org/10.1037/0033-2909.125.2.276
datos %>% summarise_all(~sum(is.na(.)))
## # A tibble: 1 × 15
## edad sexo nivel_educativo estado_civil hijos trabaja_jornada_completa
## <int> <int> <int> <int> <int> <int>
## 1 0 0 0 0 0 0
## # ℹ 9 more variables: cargo_alto <int>, ingreso_mensual <int>,
## # horas_semana_responsabilidades <int>, tiempo_libre_semanal <int>,
## # autopercibe_vida_simple <int>, usa_tecnologia_fuera_trabajo <int>,
## # bienestar_subjetivo <int>, bienestar_alto <int>,
## # bienestar_subjetivo_num <int>
datos %>%
select(where(is.numeric)) %>%
summary()
## edad ingreso_mensual horas_semana_responsabilidades
## Min. :22.0 Min. : 500000 Min. :21.00
## 1st Qu.:33.0 1st Qu.:1531514 1st Qu.:45.00
## Median :45.0 Median :2090394 Median :52.00
## Mean :43.6 Mean :2054758 Mean :51.33
## 3rd Qu.:54.0 3rd Qu.:2537939 3rd Qu.:58.00
## Max. :64.0 Max. :4338684 Max. :80.00
## NA's :10 NA's :10
## tiempo_libre_semanal usa_tecnologia_fuera_trabajo bienestar_subjetivo
## Min. : 0.00 Min. :1.000 Min. : 0.000
## 1st Qu.:14.75 1st Qu.:3.000 1st Qu.: 2.950
## Median :20.00 Median :3.000 Median : 4.132
## Mean :19.80 Mean :3.245 Mean : 4.802
## 3rd Qu.:25.00 3rd Qu.:4.000 3rd Qu.: 6.526
## Max. :40.00 Max. :5.000 Max. :10.000
## NA's :10
## bienestar_subjetivo_num
## Min. : 0.000
## 1st Qu.: 2.950
## Median : 4.132
## Mean : 4.802
## 3rd Qu.: 6.526
## Max. :10.000
## NA's :10
datos %>%
select(where(is.character)) %>%
map(~tabyl(.) %>% adorn_percentages("col") %>% adorn_pct_formatting())
## $sexo
## . n percent
## Femenino 0.5 48.8%
## Masculino 0.5 51.2%
##
## $nivel_educativo
## . n percent
## Primaria 0.1 9.2%
## Secundaria 0.4 37.0%
## Tecnico 0.3 35.0%
## Universitario 0.2 18.8%
##
## $estado_civil
## . n percent
## Casado 0.3 30.0%
## Divorciado 0.1 10.2%
## Soltero 0.3 32.2%
## Union libre 0.2 20.5%
## Viudo 0.1 7.0%
##
## $hijos
## . n percent
## No 0.4 36.2%
## Si 0.6 63.7%
##
## $trabaja_jornada_completa
## . n percent
## No 0.3 29.0%
## Si 0.7 71.0%
##
## $cargo_alto
## . n percent
## No 0.8 79.5%
## Si 0.2 20.5%
##
## $autopercibe_vida_simple
## . n percent
## No 0.7 73.5%
## Si 0.3 26.5%
##
## $bienestar_alto
## . n percent
## Alto 0.2 17.5%
## Bajo 0.8 82.5%
datos %>%
select(edad, ingreso_mensual, horas_semana_responsabilidades, tiempo_libre_semanal) %>%
pivot_longer(everything(), names_to="variable", values_to="valor") %>%
ggplot(aes(x=variable, y=valor)) +
geom_boxplot() +
facet_wrap(~variable, scales="free") +
theme_minimal()
## Warning: Removed 20 rows containing non-finite outside the scale range
## (`stat_boxplot()`).
# Hijos y bienestar
datos %>%
group_by(hijos) %>%
summarise(prom_bienestar = mean(bienestar_subjetivo_num, na.rm = TRUE)) %>%
ggplot(aes(x = hijos, y = prom_bienestar, fill = hijos)) +
geom_col() +
labs(title = "Bienestar subjetivo según hijos", y = "Promedio de bienestar") +
theme_minimal()
# Estado civil
ggplot(datos, aes(x = estado_civil, y = bienestar_subjetivo_num)) +
geom_boxplot(fill = "lightblue") +
labs(title = "Bienestar por estado civil", x = "Estado civil", y = "Bienestar") +
theme_minimal()
## Warning: Removed 10 rows containing non-finite outside the scale range
## (`stat_boxplot()`).
# Tiempo libre
ggplot(datos, aes(x = tiempo_libre_semanal, y = bienestar_subjetivo_num)) +
geom_point(alpha = 0.4) +
geom_smooth(method = "lm", se = TRUE, color = "darkgreen") +
labs(title = "Tiempo libre y bienestar", x = "Horas libres", y = "Bienestar") +
theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 10 rows containing non-finite outside the scale range
## (`stat_smooth()`).
## Warning: Removed 10 rows containing missing values or values outside the scale range
## (`geom_point()`).
ggplot(datos, aes(x = horas_semana_responsabilidades, y = bienestar_subjetivo_num)) +
geom_point(alpha = 0.4) +
geom_smooth(method = "lm", se = TRUE, color = "red") +
labs(title = "Relación entre responsabilidades semanales y bienestar",
x = "Horas de responsabilidades", y = "Bienestar subjetivo") +
theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 20 rows containing non-finite outside the scale range
## (`stat_smooth()`).
## Warning: Removed 20 rows containing missing values or values outside the scale range
## (`geom_point()`).
# Histograma de edad
ggplot(datos, aes(x = edad)) +
geom_histogram(binwidth = 5, fill = "steelblue", color = "black", alpha = 0.7) +
labs(title = "Distribución de edad en la muestra", x = "Edad", y = "Frecuencia") +
theme_minimal()
# Barras para nivel educativo
ggplot(datos, aes(x = nivel_educativo)) +
geom_bar(fill = "coral") +
labs(title = "Nivel educativo de los participantes", x = "Nivel educativo", y = "Cantidad") +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
# Boxplot ingreso mensual por estado civil
ggplot(datos, aes(x = estado_civil, y = ingreso_mensual)) +
geom_boxplot(fill = "lightgreen") +
labs(title = "Ingreso mensual según estado civil", x = "Estado civil", y = "Ingreso mensual") +
theme_minimal()
## Warning: Removed 10 rows containing non-finite outside the scale range
## (`stat_boxplot()`).
t.test(bienestar_subjetivo_num ~ hijos, data = datos)
##
## Welch Two Sample t-test
##
## data: bienestar_subjetivo_num by hijos
## t = 0.55842, df = 285.98, p-value = 0.577
## alternative hypothesis: true difference in means between group No and group Si is not equal to 0
## 95 percent confidence interval:
## -0.3564032 0.6387315
## sample estimates:
## mean in group No mean in group Si
## 4.891961 4.750797
# Interpretación
ifelse(t.test(bienestar_subjetivo_num ~ hijos, data = datos)$p.value < 0.05,
"El valor p es < 0.05 → se rechaza H₀. Hay diferencia significativa.",
"El valor p es > 0.05 → no se rechaza H₀. No hay diferencia significativa.")
## [1] "El valor p es > 0.05 → no se rechaza H₀. No hay diferencia significativa."
anova_estado <- aov(bienestar_subjetivo_num ~ estado_civil, data = datos)
summary(anova_estado)
## Df Sum Sq Mean Sq F value Pr(>F)
## estado_civil 4 10.9 2.736 0.479 0.751
## Residuals 385 2198.3 5.710
## 10 observations deleted due to missingness
# Interpretación
ifelse(summary(anova_estado)[[1]]$`Pr(>F)`[1] < 0.05,
"El valor p < 0.05 → se rechaza H₀. Hay diferencias significativas.",
"El valor p > 0.05 → no se rechaza H₀. No hay diferencias significativas.")
## [1] "El valor p > 0.05 → no se rechaza H₀. No hay diferencias significativas."
tabla_chi <- table(datos$autopercibe_vida_simple, datos$usa_tecnologia_fuera_trabajo)
prueba_chi <- chisq.test(tabla_chi)
prueba_chi
##
## Pearson's Chi-squared test
##
## data: tabla_chi
## X-squared = 1.3841, df = 4, p-value = 0.847
ifelse(prueba_chi$p.value < 0.05,
"El valor p < 0.05 → se rechaza H₀. Hay asociación significativa.",
"El valor p > 0.05 → no se rechaza H₀. No hay evidencia de asociación.")
## [1] "El valor p > 0.05 → no se rechaza H₀. No hay evidencia de asociación."
cor.test(datos$tiempo_libre_semanal, datos$bienestar_subjetivo_num)
##
## Pearson's product-moment correlation
##
## data: datos$tiempo_libre_semanal and datos$bienestar_subjetivo_num
## t = 4.1599, df = 388, p-value = 3.922e-05
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## 0.1095779 0.2997827
## sample estimates:
## cor
## 0.2066317
cor_result <- cor.test(datos$tiempo_libre_semanal, datos$bienestar_subjetivo_num)
ifelse(cor_result$p.value < 0.05,
"El valor p < 0.05 → se rechaza H₀. Existe correlación significativa.",
"El valor p > 0.05 → no se rechaza H₀. No hay correlación significativa.")
## [1] "El valor p < 0.05 → se rechaza H₀. Existe correlación significativa."
Hijos y bienestar (t-test):
No se encontró una diferencia estadísticamente significativa en el
bienestar subjetivo entre personas con y sin hijos (t = 0.558, p =
0.577). Esto indica que, en esta muestra, la presencia de hijos no
afecta el nivel de satisfacción con la vida.
Estado civil y bienestar (ANOVA):
No se identificaron diferencias significativas en el bienestar subjetivo
según el estado civil (F = 0.479, p = 0.751). Por lo tanto, no hay
evidencia suficiente para afirmar que el estado civil influya en la
percepción del bienestar en esta población.
Vida simple y uso de tecnología
(Chi-cuadrado):
No se encontró asociación significativa entre la percepción de llevar
una vida simple y el uso de tecnología fuera del trabajo (χ² = 1.384, df
= 4, p = 0.847). Esto sugiere que estas variables no están relacionadas
en esta muestra.
Tiempo libre y bienestar (Correlación de
Pearson):
Se observó una correlación positiva y significativa entre el tiempo
libre semanal y el bienestar subjetivo (r = 0.207, p < 0.001),
indicando que un mayor tiempo libre se asocia con un mayor nivel de
satisfacción con la vida.
Este estudio permitió identificar algunos factores personales y de estilo de vida que explican el bienestar subjetivo en la muestra analizada. Los resultados muestran que:
El tiempo libre semanal tiene una correlación positiva y significativa con el bienestar subjetivo, indicando que dedicar más tiempo a actividades personales contribuye a una mayor satisfacción con la vida.
No se encontraron diferencias significativas en el bienestar subjetivo entre personas con y sin hijos, ni tampoco según el estado civil o la percepción de vida simple y uso de tecnología, lo que sugiere que estos factores no influyen directamente en el bienestar para esta población específica.
Con base en estos hallazgos, se recomienda:
Fomentar programas y políticas que promuevan un mejor aprovechamiento del tiempo libre como estrategia para mejorar el bienestar general.
Continuar investigando otros factores personales, sociales o ambientales que puedan influir en la percepción subjetiva de bienestar.
Diseñar campañas que incentiven un estilo de vida que permita un equilibrio adecuado entre responsabilidades y tiempo libre.
Evaluar y adaptar intervenciones específicas según características particulares de cada grupo poblacional, ya que factores como el estado civil o tener hijos no mostraron efecto significativo en este estudio.