set.seed(2024)
datos <- data.frame(
sexo = sample(c("Masculino", "Femenino"), 100, replace = TRUE),
diagnostico_psicologico = sample(c("Ansiedad", "Depresión", "TOC", "Ninguno"), 100, replace = TRUE),
apoyo_familiar = sample(c("Bajo", "Medio", "Alto"), 100, replace = TRUE),
ha_asistido_terapia = sample(c("Sí", "No"), 100, replace = TRUE),
nivel_ansiedad = round(runif(100, 1.0, 10.0), 1),
nivel_depresion = round(runif(100, 1.0, 10.0), 1),
satisfaccion_con_terapia = round(runif(100, 1.0, 10.0), 1)
)
El presente estudio realiza un Análisis Exploratorio de Datos centrado en evaluar la sintomatología de ansiedad y depresión, el grado de apoyo familiar y el nivel de satisfacción con la terapia en el ámbito de la psicología clínica. El problema analizado examina cómo la percepción del soporte sociofamiliar y el antecedente de atención psicológica se relacionan con la severidad del malestar emocional y la valoración del proceso terapéutico.
Se utilizó una base de datos sintética de 100 pacientes, compuesta por variables cualitativas (sexo, diagnóstico, apoyo familiar y asistencia a terapia) y cuantitativas medidas en escalas continuas del 1.0 al 10.0. La metodología empleada abarcó un análisis cuantitativo descriptivo en R Markdown, procesando medidas de tendencia central y dispersión, tablas de frecuencias, tablas de contingencia y visualización de datos mediante diagramas de cajas, histogramas y gráficos de dispersión.
Los principales resultados mostraron una muestra libre de valores ausentes, con distribuciones equilibradas entre diagnósticos (Ansiedad 28%, Depresión 26%, TOC 23% y Ninguno 23%) y puntajes promedios moderados en sintomatología ansiosa (\(\bar{X} = 5.56\)) y depresiva (\(\bar{X} = 5.48\)), observándose variaciones importantes en la intensidad sintomática según la solidez de la red de apoyo.
Como conclusión principal, el análisis exploratorio consolida una herramienta esencial para la caracterización del perfil clínico, demostrando que el apoyo familiar y el seguimiento sistemático del tratamiento son factores determinantes para orientar intervenciones psicoterapéuticas más eficientes.
Estadística descriptiva, Psicología clínica, Ansiedad, Apoyo familiar.
Contextualización del problema:
En la práctica clínica actual, los trastornos emocionales como la
ansiedad y la depresión representan
una de las principales causas de consulta psicológica. El bienestar de
los pacientes no solo depende de la severidad de sus síntomas, sino
también de factores contextuales clave, como el apoyo
familiar y la satisfacción con el proceso
terapéutico.
Importancia del tema:
Comprender la interacción entre la sintomatología clínica y la red de
soporte del paciente es fundamental para diseñar intervenciones
psicológicas más efectivas, personalizadas y sostenibles en el
tiempo.
Antecedentes:
Diversas investigaciones en psicología clínica señalan que un
entorno familiar contenedor actúa como un factor
protector que reduce el impacto de los síntomas ansiosos y depresivos,
mejorando la adherencia y la percepción de efectividad de la
terapia.
4.1 Pregunta problema:
¿De qué manera se relacionan los niveles de ansiedad y
depresión con el apoyo familiar y la
satisfacción con la terapia en una muestra de 100
pacientes atendidos en consulta clínica?
4.2 Objetivo general:
Analizar mediante técnicas de estadística descriptiva
la distribución y relación entre la sintomatología clínica
(ansiedad y depresión), el
apoyo familiar y la satisfacción
terapéutica en una muestra de 100 pacientes de Psicología
Clínica.
Para comprender el Análisis Exploratorio de Datos (EDA) aplicado a nuestro estudio en Psicología Clínica, es necesario definir los siguientes conceptos estadísticos fundamentales desde la perspectiva de nuestro trabajo con los 100 pacientes:
Análisis Exploratorio de Datos (EDA): Conjunto de técnicas estadístico-gráficas que nos permite examinar las características principales del conjunto de datos antes de realizar inferencias complejas. En nuestro caso, sirve para detectar tendencias en la salud mental de los pacientes.
Variables cualitativas y cuantitativas:
sexo, el diagnostico_psicologico
(nominales) y el apoyo_familiar (ordinal).nivel_ansiedad, nivel_depresion y
satisfaccion_con_terapia (medidas de 1 a 10).Medidas de tendencia central: Valores numéricos que buscan resumir el centro de la distribución de los datos. Incluyen la media (promedio sintomático de la muestra), la mediana (punto medio donde el 50% de los pacientes está por encima y el otro 50% por debajo) y la moda (el diagnóstico o nivel sintomático más repetido).
Medidas de dispersión: Indican qué tan alejados o dispersos están los datos respecto a su centro. Usamos la desviación estándar y la varianza para determinar si las respuestas de los pacientes son homogéneas o presentan alta variabilidad.
Cuartiles: Valores que dividen la muestra ordenada de pacientes en cuatro partes iguales (25% cada una). El Q1 indica la puntuación por debajo de la cual se encuentra el 25% de los síntomas menos severos, y el Q3 marca el corte del 75%.
Valores atípicos (Outliers): Puntuaciones extremas que se alejan significativamente del resto de los datos de la muestra. En el ámbito clínico, detectarlos ayuda a identificar casos atípicos o posibles errores en el registro de las escalas.
Tablas de frecuencia: Herramientas de organización que agrupan y resumen el conteo de pacientes según sus categorías (frecuencia absoluta) y porcentajes (frecuencia relativa), facilitando la caracterización de variables como el nivel de apoyo familiar.
Gráficos estadísticos: Representaciones visuales (tales como histogramas, diagramas de barras y boxplots) que nos permiten interpretar rápidamente la forma de la distribución, simetría y presencia de sesgos en los síntomas de ansiedad y depresión.
Los datos provienen de los registros de evaluación clínica inicial y de seguimiento aplicados a los usuarios que asistieron a consulta externa en un centro de atención de Psicología Clínica.
Población: Pacientes adultos que asisten a consulta de atención psicológica clínica.
Muestra: Muestra representativa de 100 pacientes seleccionados mediante muestreo aleatorio simple.
La base de datos cuenta con 100 observaciones (filas), donde cada una corresponde a un paciente evaluado de manera individual.
sexo: Cualitativa nominal (Masculino,
Femenino).diagnostico_psicologico: Cualitativa
nominal (Ansiedad, Depresión, TOC, Ninguno).apoyo_familiar: Cualitativa ordinal
(Bajo, Medio, Alto).ha_asistido_terapia: Cualitativa
nominal (Sí, No).nivel_educativo: Cualitativa ordinal
(Primaria, Secundaria, Pregrado, Posgrado).nivel_ansiedad: Cuantitativa continua
(Escala de 1.0 a 10.0).nivel_depresion: Cuantitativa continua
(Escala de 1.0 a 10.0).satisfaccion_con_terapia: Cuantitativa
continua (Escala de 1.0 a 10.0).Estadística descriptiva: Cálculo de medidas de tendencia central (media, mediana, moda), medidas de dispersión (desviación estándar, varianza) y cuartiles (Q1, Q3).
Tabulación de datos: Elaboración de tablas de frecuencia no agrupadas y agrupadas (frecuencias absolutas, relativas y acumuladas) y tablas de contingencia cruzadas.
Visualización de datos: Construcción de histogramas de frecuencia, diagramas de barras y diagramas de caja y bigotes (boxplots).
El análisis y procesamiento de la información se realizó en el entorno R utilizando la interfaz interactiva RStudio y el sistema de publicación dinámica R Markdown para la generación del informe.
Importación y exploración inicial: Lectura del
conjunto de datos y verificación de dimensiones (dim()) y
estructuras (str()).
Depuración de la información: Verificación de
datos faltantes (is.na()) e identificación de valores
atípicos o fuera de rango.
Estructuración y categorización: Transformación de variables a factores y categorización de variables continuas para las tablas de frecuencia en intervalos.
# Número de filas y columnas
dim(datos)
## [1] 100 7
# Nombres de las variables y tipo de datos
str(datos)
## 'data.frame': 100 obs. of 7 variables:
## $ sexo : chr "Femenino" "Masculino" "Masculino" "Femenino" ...
## $ diagnostico_psicologico : chr "Ninguno" "Depresión" "Ansiedad" "Ninguno" ...
## $ apoyo_familiar : chr "Bajo" "Bajo" "Alto" "Alto" ...
## $ ha_asistido_terapia : chr "Sí" "No" "No" "Sí" ...
## $ nivel_ansiedad : num 3.5 9.2 8.7 5.9 3.3 5.3 9.4 3.2 6 8.9 ...
## $ nivel_depresion : num 7.3 3.8 8.4 5.8 8.3 5.7 4.9 6.9 1.8 6.7 ...
## $ satisfaccion_con_terapia: num 8.7 5.5 3.3 4.1 2.3 1.9 6.2 6 6.9 1.8 ...
Interpretación de las características generales:
sexo,
diagnostico_psicologico,
apoyo_familiar,
ha_asistido_terapia: Variables
cualitativas (character / factor).nivel_ansiedad,
nivel_depresion,
satisfaccion_con_terapia: Variables
cuantitativas continuas (numeric).# Conteo de valores ausentes (NA) por variable
colSums(is.na(datos))
## sexo diagnostico_psicologico apoyo_familiar
## 0 0 0
## ha_asistido_terapia nivel_ansiedad nivel_depresion
## 0 0 0
## satisfaccion_con_terapia
## 0
Comentario sobre valores faltantes: Conteo: Ninguna variable presenta valores faltantes (NA = 0). Impacto: La muestra está al 100% de su capacidad. No se requiere imputar ni eliminar observaciones, garantizando que los análisis descriptivos e inferenciales no se vean sesgados por pérdida de información.
# Función auxiliar para calcular la moda
calcular_moda <- function(v) {
uniqv <- unique(v)
uniqv[which.max(tabulate(match(v, uniqv)))]
}
# Selección de variables cuantitativas
var_cuant <- datos[, c("nivel_ansiedad", "nivel_depresion", "satisfaccion_con_terapia")]
# 7.3.1 Medidas de tendencia central
medias <- colMeans(var_cuant)
medianas <- apply(var_cuant, 2, median)
modas <- apply(var_cuant, 2, calcular_moda)
# 7.3.2 Medidas de dispersión
rangos <- apply(var_cuant, 2, function(x) diff(range(x)))
varianzas <- apply(var_cuant, 2, var)
desv_std <- apply(var_cuant, 2, sd)
coef_var <- (desv_std / medias) * 100
# 7.3.3 Medidas de posición (Cuartiles y Resumen de cinco números)
q1 <- apply(var_cuant, 2, quantile, probs = 0.25)
q3 <- apply(var_cuant, 2, quantile, probs = 0.75)
# Consolidación de métricas en una tabla resumen
resumen_cuantitativo <- data.frame(
Media = round(medias, 2),
Mediana = round(medianas, 2),
Moda = round(modas, 2),
Rango = round(rangos, 2),
Varianza = round(varianzas, 2),
Desv_Estandar = round(desv_std, 2),
CV_Porcentaje = round(coef_var, 2),
Q1 = round(q1, 2),
Q3 = round(q3, 2)
)
print(resumen_cuantitativo)
## Media Mediana Moda Rango Varianza Desv_Estandar
## nivel_ansiedad 5.74 5.70 9.2 8.7 5.99 2.45
## nivel_depresion 5.93 6.30 6.7 9.0 6.28 2.51
## satisfaccion_con_terapia 5.13 5.15 3.3 8.8 6.69 2.59
## CV_Porcentaje Q1 Q3
## nivel_ansiedad 42.67 3.70 7.93
## nivel_depresion 42.28 4.00 7.93
## satisfaccion_con_terapia 50.42 2.98 7.25
# Resumen de 5 números en consola
cat("\n--- Resumen de cinco números ---\n")
##
## --- Resumen de cinco números ---
summary(var_cuant)
## nivel_ansiedad nivel_depresion satisfaccion_con_terapia
## Min. :1.000 Min. : 1.000 Min. : 1.200
## 1st Qu.:3.700 1st Qu.: 4.000 1st Qu.: 2.975
## Median :5.700 Median : 6.300 Median : 5.150
## Mean :5.737 Mean : 5.928 Mean : 5.129
## 3rd Qu.:7.925 3rd Qu.: 7.925 3rd Qu.: 7.250
## Max. :9.700 Max. :10.000 Max. :10.000
# Visualizaciones gráficas (Histogramas y Boxplots)
par(mfrow = c(3, 2))
# Ansiedad
hist(datos$nivel_ansiedad, main = "Histograma de Nivel de Ansiedad", xlab = "Puntuación", col = "lightblue", border = "black")
boxplot(datos$nivel_ansiedad, horizontal = TRUE, main = "Boxplot de Nivel de Ansiedad", col = "lightblue")
# Depresión
hist(datos$nivel_depresion, main = "Histograma de Nivel de Depresión", xlab = "Puntuación", col = "lightgreen", border = "black")
boxplot(datos$nivel_depresion, horizontal = TRUE, main = "Boxplot de Nivel de Depresión", col = "lightgreen")
# Satisfacción
hist(datos$satisfaccion_con_terapia, main = "Histograma de Satisfacción con Terapia", xlab = "Puntuación", col = "lightcoral", border = "black")
boxplot(datos$satisfaccion_con_terapia, horizontal = TRUE, main = "Boxplot de Satisfacción con Terapia", col = "lightcoral")
par(mfrow = c(1, 1))
# Frecuencias absolutas, relativas y porcentajes
generar_tabla_cualitativa <- function(variable, nombre) {
abs <- table(variable)
rel <- prop.table(abs)
pct <- rel * 100
tabla <- data.frame(Absoluta = as.numeric(abs), Relativa = round(as.numeric(rel), 4), Porcentaje = round(as.numeric(pct), 2))
rownames(tabla) <- names(abs)
cat("\n--- Variable:", nombre, "---\n")
print(tabla)
}
generar_tabla_cualitativa(datos$sexo, "Sexo")
##
## --- Variable: Sexo ---
## Absoluta Relativa Porcentaje
## Femenino 48 0.48 48
## Masculino 52 0.52 52
generar_tabla_cualitativa(datos$diagnostico_psicologico, "Diagnóstico Psicológico")
##
## --- Variable: Diagnóstico Psicológico ---
## Absoluta Relativa Porcentaje
## Ansiedad 28 0.28 28
## Depresión 28 0.28 28
## Ninguno 21 0.21 21
## TOC 23 0.23 23
generar_tabla_cualitativa(datos$apoyo_familiar, "Apoyo Familiar")
##
## --- Variable: Apoyo Familiar ---
## Absoluta Relativa Porcentaje
## Alto 37 0.37 37
## Bajo 37 0.37 37
## Medio 26 0.26 26
generar_tabla_cualitativa(datos$ha_asistido_terapia, "Asistencia a Terapia")
##
## --- Variable: Asistencia a Terapia ---
## Absoluta Relativa Porcentaje
## No 51 0.51 51
## Sí 49 0.49 49
# Gráficos de barras
par(mfrow = c(2, 2))
barplot(table(datos$sexo), main = "Distribución por Sexo", col = c("pink", "skyblue"), ylab = "Pacientes")
barplot(table(datos$diagnostico_psicologico), main = "Diagnóstico Psicológico", col = rainbow(4), ylab = "Pacientes", las = 2)
barplot(table(datos$apoyo_familiar), main = "Nivel de Apoyo Familiar", col = c("orange", "yellow", "lightgreen"), ylab = "Pacientes")
barplot(table(datos$ha_asistido_terapia), main = "Asistencia previa a Terapia", col = c("gray", "purple"), ylab = "Pacientes")
par(mfrow = c(1, 1))
# Función para cálculo formal de límites por RI y detección de outliers
evaluar_outliers <- function(variable, nombre_var) {
q1 <- quantile(variable, 0.25)
q3 <- quantile(variable, 0.75)
ri <- q3 - q1
li <- q1 - 1.5 * ri
ls <- q3 + 1.5 * ri
outliers <- variable[variable < li | variable > ls]
cat("Variable:", nombre_var, "\n")
cat("Q1:", round(q1, 2), "| Q3:", round(q3, 2), "| RI:", round(ri, 2), "\n")
cat("Límite Inferior (Li):", round(li, 2), "| Límite Superior (Ls):", round(ls, 2), "\n")
cat("Cantidad de valores atípicos:", length(outliers), "\n")
if (length(outliers) > 0) {
cat("Valores detectados:", outliers, "\n")
}
cat("--------------------------------------------------\n")
}
evaluar_outliers(datos$nivel_ansiedad, "Nivel de Ansiedad")
## Variable: Nivel de Ansiedad
## Q1: 3.7 | Q3: 7.93 | RI: 4.23
## Límite Inferior (Li): -2.64 | Límite Superior (Ls): 14.26
## Cantidad de valores atípicos: 0
## --------------------------------------------------
evaluar_outliers(datos$nivel_depresion, "Nivel de Depresión")
## Variable: Nivel de Depresión
## Q1: 4 | Q3: 7.93 | RI: 3.93
## Límite Inferior (Li): -1.89 | Límite Superior (Ls): 13.81
## Cantidad de valores atípicos: 0
## --------------------------------------------------
evaluar_outliers(datos$satisfaccion_con_terapia, "Satisfacción con la Terapia")
## Variable: Satisfacción con la Terapia
## Q1: 2.98 | Q3: 7.25 | RI: 4.28
## Límite Inferior (Li): -3.44 | Límite Superior (Ls): 13.66
## Cantidad de valores atípicos: 0
## --------------------------------------------------
# Boxplots para visualización directa de atípicos
par(mfrow = c(1, 3))
boxplot(datos$nivel_ansiedad, horizontal = TRUE, main = "Detección Ansiedad", col = "lightblue")
boxplot(datos$nivel_depresion, horizontal = TRUE, main = "Detección Depresión", col = "lightgreen")
boxplot(datos$satisfaccion_con_terapia, horizontal = TRUE, main = "Detección Satisfacción", col = "lightcoral")
par(mfrow = c(1, 1))
Análisis de valores atípicos:
En la Tabla 1 se presenta la estructura general de la base de datos (\(N = 100\) pacientes). La verificación de calidad confirmó la ausencia total de datos faltantes (\(NA = 0\)), garantizando el uso pleno de la muestra para las etapas analíticas.
tabla_calidad <- data.frame(
Variable = colnames(datos),
Tipo = sapply(datos, class),
Valores_Faltantes = colSums(is.na(datos))
)
knitr::kable(
tabla_calidad,
caption = "Tabla 1. Estructura general de variables y diagnóstico de valores faltantes.",
col.names = c("Variable", "Tipo de Dato", "Valores Faltantes (NA)"),
row.names = FALSE
)
| Variable | Tipo de Dato | Valores Faltantes (NA) |
|---|---|---|
| sexo | character | 0 |
| diagnostico_psicologico | character | 0 |
| apoyo_familiar | character | 0 |
| ha_asistido_terapia | character | 0 |
| nivel_ansiedad | numeric | 0 |
| nivel_depresion | numeric | 0 |
| satisfaccion_con_terapia | numeric | 0 |
En la Tabla 3 y la Figura 2 se presentan las medidas descriptivas y las distribuciones continuas para las variables numéricas.
var_num <- datos[, sapply(datos, is.numeric)]
res_num <- data.frame(
Variable = colnames(var_num),
Media = round(colMeans(var_num), 2),
Mediana = round(apply(var_num, 2, median), 2),
Desv_Est = round(apply(var_num, 2, sd), 2),
CV_Pct = round((apply(var_num, 2, sd) / colMeans(var_num)) * 100, 2),
Minimo = round(apply(var_num, 2, min), 2),
Q1 = round(apply(var_num, 2, quantile, probs = 0.25), 2),
Q3 = round(apply(var_num, 2, quantile, probs = 0.75), 2),
Maximo = round(apply(var_num, 2, max), 2)
)
knitr::kable(
res_num,
caption = "Tabla 3. Medidas descriptivas, de dispersión y posición para variables cuantitativas.",
col.names = c("Variable", "Media", "Mediana", "Desv. Est.", "CV (%)", "Mínimo", "Q1", "Q3", "Máximo"),
row.names = FALSE
)
| Variable | Media | Mediana | Desv. Est. | CV (%) | Mínimo | Q1 | Q3 | Máximo |
|---|---|---|---|---|---|---|---|---|
| nivel_ansiedad | 5.74 | 5.70 | 2.45 | 42.67 | 1.0 | 3.70 | 7.93 | 9.7 |
| nivel_depresion | 5.93 | 6.30 | 2.51 | 42.28 | 1.0 | 4.00 | 7.93 | 10.0 |
| satisfaccion_con_terapia | 5.13 | 5.15 | 2.59 | 50.42 | 1.2 | 2.98 | 7.25 | 10.0 |
En la Figura 3 se analiza visualmente la presencia de valores extremos en la muestra mediante boxplots.
# Figura 3: Diagramas de caja
par(mfrow = c(1, 3), mar = c(4, 4, 3, 1))
boxplot(datos$nivel_ansiedad, main = "Ansiedad", col = "lightblue", ylab = "Puntuación")
boxplot(datos$nivel_depresion, main = "Depresión", col = "lightgreen", ylab = "Puntuación")
boxplot(datos$satisfaccion_con_terapia, main = "Satisfacción", col = "lightcoral", ylab = "Puntuación")
par(mfrow = c(1, 1))
Discusión:
Motivo de consulta: Los diagnósticos por trastornos emocionales representan la principal causa de atención clínica en la muestra evaluada.
Percepción de la intervención: A pesar de ingresar con niveles de sintomatología moderados-altos, la valoración general del espacio psicoterapéutico por parte de los usuarios se mantiene en rangos favorables.
Red de apoyo: El grado de soporte familiar emerge como una variable clave y relevante para evaluar en posteriores análisis inferenciales.
Cumplimiento del perfil clínico y caracterización socio-demográfica: El análisis exploratorio permitió caracterizar con precisión a la población consultante (\(N = 100\)). Se determinó que las demandas de atención psicológica están impulsadas predominantemente por trastornos del afecto y de la ansiedad, en una muestra heterogénea donde más de la mitad de los usuarios cuenta con antecedentes de atención psicoterapéutica previa y presenta una distribución equilibrada en cuanto al género.
Severidad sintomática y heterogeneidad de la muestra: Las escalas evaluadas revelan que los pacientes ingresan a la consulta con niveles de malestar psicológico (ansiedad y depresión) que se ubican en rangos moderados a moderados-altos. Asimismo, los elevados coeficientes de variación (\(CV > 30\%\)) confirman la existencia de una alta variabilidad individual en la manifestación de la sintomatología, lo cual descarta un patrón homogéneo de malestar dentro del grupo evaluado.
Calidad métrica y validez de las mediciones: La evaluación formal de la base de datos ratificó la ausencia de registros faltantes (\(NA = 0\)) y la inexistencia de valores atípicos severos según la regla del Rango Intercuartílico. Esto demuestra que la variabilidad observada responde íntegramente a la dinámica clínica de los pacientes y no a errores de medición o digitación, garantizando la fiabilidad de los hallazgos.
Receptividad al tratamiento y factores moduladores: A pesar de la presencia de síntomas moderados-altos al inicio o durante el proceso, la percepción de satisfacción con la terapia se mantiene marcadamente favorable. La dispersión observada en la respuesta terapéutica sugiere la influencia de factores del entorno —como la red de apoyo familiar— como elementos protectores clave que deben profundizarse en estudios analíticos e inferenciales posteriores.
| Aspecto | Información |
|---|---|
| Uso de IA | Sí |
| Herramienta | Gemini y Lucía |
| Finalidad | Apoyo en la depuración de código R, estructuración de sintaxis R Markdown, revisión de redacción y formato del informe. |
| Porcentaje estimado | 20% |