EvaluacionU1

Nadia Alejandra Soto López, Alejandro Collantes Mendoza, Jose Fernando Hernandez Angulo, Alexandra Iveth Rodriguez Castellanos

6/4/2022

Evaluación primera unidad

Métodos supervisados y no supervisados

Método supervisado

Este método resuelve problemas que son conocidos y utiliza un conjunto de datos que están previamente etiquetados para con esta información entrenar al algoritmo gracias a este entrenamiento el algoritmo puede “aprender” y posteriormente aplicar lo anteriormente realizado, pero con nuevos datos para obtener la salida correcta.

Algunos ejemplos son: la regresión lineal, la regresión lógistica, árboles de decisión y bosques aleatorios.

Método no supervisado

En este método los datos introducidos no están previamente etiquetados, el modelo va a a buscar patrones y características para darle un sentido a los datos por sí mismo.

Algunos ejemplos son: agrupamiento jerarquico, k-means

Diferencias

La diferencia más notoria es que los métodos supervisados necesitan ser previamente entrenados con un conjunto de datos de los cuales ya conozcamos el resultado, para posteriormente darle unos datos nuevos y que aplique lo “aprendido”, mientras que a los no supervisados se le puede dar datos de los cuales se desconoce el resultado para que realice el modelo por sí mismo.

Proceso de resolución de problema usando ciencia de datos

1.- Detectar problema

Se debe de establecer un objetivo claro, identificar el problema y formular una hipótesis, de esta forma se tendrá una visión más clara de lo que se debe de realizar a lo largo de la investigación y poder dar una solución al problema planteado.

2.- Preparación de los datos

Se debe de comprender y preparar los datos que van a ser utilizados a lo largo del analisís, estos datos pueden ser proporcionado por un tercero o tener que recabarlos nosotros, en todo momento se debe de tener la certeza de que los datos son confiables y que no presentan inconsistencias. para poder dar una verdadera solución al problema.

3.- Desarrollo del modelo

Se determina los métodos o algoritmos que se van a aplicar a los datos, cuando se tengan el o los distintos modelos se deben de evaluar y se optimizarán los que dieron mejores resultados.

4.- Analisis de resultados

Teniendo ya los modelos, se debe de realizar un analisis de los resultados que se obtuvo en cada uno. Hay distintos tipos de analisis, pero hasta el más básico puede reflejar un resultado que aporte mucho.

5.- Interpretación de resultados

Ya con los resultados analizados, se debe de interpretarlos, para ver si logran resolver el problema que se estaba planteando desde el principio y posteriormente difundir dicho resultado con otras personas, pues nuestro analisis puede ser interesante o de ayuda para alguien más

Librerías usadas

¿Que son las librerías en R?

Las librerías son una función que utiliza R en la que contiene multiples funciones, que estas nos permitirán reliazar las importaciones de datos, transformar datos y además permitir representar de manera gráfica los datos presentados.

setwd("~/ea1130")
library(pacman)
p_load("xfun", "ggplot2","cluster","datasets","DT","fdth","readr","prettydoc", "dplyr", "psych", "GGally","gridExtra")

Pacman: Nos permite consultar tanto la base de datos de los paquetes presentes en el sistema de los paquetes instalados, como las bases de datos de los servidores remotos (de los paquetes alojados en servidores o repositorios) e incluso los archivos presentes en dichas bases de datos para conocer las subopciones respectivas de cada opción.

Prettydoc: Podremos crear viñetas y documentos diminutos pero bonitos a partir de R.

DT: nos permite crear una interfaz para presentar los datos en forma de tablas.

xfun: Son funciones misceláneas comúnmente utilizadas en otros paquetes por “Yihui Xie”

dplyr: Es una herramienta bastante optimizada para trabajar con marcos de datos como objetos y fuera de la memoria.

fdth: contiene un conjunto de funciones que permite al usuario realizar fácilmente tablas de distribución de frecuencias (‘fdt’), sus histogramas asociados y polígonos de frecuencia (absoluta, relativa y acumulativo).

psych: Esta librería incluye una serie de funciones típicamente relacionadas con la psicología.

GGally: El paquete está diseñado para poder graficar en forma de matriz un set de datos con multiples variables previamente elegidas para formar el dataset.

ggplot2: Es un paquete de visualización de datos para el lenguaje R que en otras palabras ns implementa una representación esquematica de dichos graficos.

readr: Nos devuelve un vector de cadenas de texto , donde cada elemento recoge una linea del archivo de datos originales.

gridExtra: Nos deja a nuestro alcance una sere de funciones a nivel de usuario para trabajar con “grid”, con esto organizamos multiples graficos como tablas.

Datos usados

Los datos que van a ser utilizados provienen de una encuesta realizada por alumnos de ITSON en 2021 sobre como afectó la pandemia en el estrés de las personas.

Angustia: en una escala del 1 al 5 que tan angustiado se ha sentido el encuestado con respecto a la pandemia.

Depresion En una escala del 1 al 5 que tan deprimido se sintió a lo largo de la cuarentena.

FaltaSueño: En una escala del 1 al 5 que tan afectado se vio su descanso.

Edad: Rango de edad de los encuestados.

Genero: Genero de los encuestados.

SistemaSalud: En una escala del 1 al 5 que tan posible es que el sistema de salud colapse según los encuestados.

AfectoIngresos: En una escala del 1 al 5 que tanto afectó la pandemia a los ingresos del encuestado.

PosibilidadContagio: En una escala del 1 al 5 los encuestados respondieron que tan propensos creen que están de ser contagiado.

datosEstres <- read_csv("AnalisisEstres2021.csv")
## Rows: 56 Columns: 50
## -- Column specification --------------------------------------------------------
## Delimiter: ","
## chr (10): Timestamp, Género, ¿Cuál es tu rango de edad?, Estado de la republ...
## dbl (40): De una escala del 1 al 5 ¿Cómo afecto la pandemia a sus ingresos?,...
## 
## i Use `spec()` to retrieve the full column specification for this data.
## i Specify the column types or set `show_col_types = FALSE` to quiet this message.
EstresDatos <- data.frame(datosEstres)
datatable(datosEstres)

Introducción

A finales del año 2019 en China apareció lo que es llamado SARS-Cov-2 o COVID19 como es más conocido, siendo un virus capaz de provocar un problema respiratorio agudo grave que incluso puede ocasionar la muerte. A medida que la epidemia por el COVID-19 se fue extendiendo por todo el mundo trajo consigo un sinfín de problemas, pero principalmente provocando un considerable número de miedo, nervios, preocupación en las personas a nivel mundial.

Debido al coronaviros SARS-Cosv-2 o bien COVID 19 ha traido consigo problemas tanto en el ámbito social, laboral, económico, etcétera.

Sin embargo dentro de las consecuencias del COVID 19, tenemos la salud mental de los mexicanos(a) pues es importante el saber que tanto afecto a la salud mental de los mexicanos después de esta gran crisis global que se presentó.

cabe mencionar que dentro de la salud mental existen más ramas que ésta abarca. Sin embargo, nos enfocaremos solamente en los niveles de estrés presentados por los mexinacos durante la pandemia COVID 19.

Objetivos

El objetivo principal de la realización del caso de estudio estrés post-covid es conocer como influyó el COvID 19 en los niveles de estrés de los mexicanos, indagar de manera estadística cuanto aumento de estrés se presentó durante la pandemia cOVID 19, debido al cambio tan drastico de vida que se nos presentó en el año 2020, estando en cuarentena, aplicando el uso de cubre bocas, gel antibacterial, sana distancia y presenciando los números tan alarmantes de muertes diarias en México como en el resto del mundo.

Marco teórico

Durante la pandemia los niveles de estrés han aumentado considerablemente, debido a los cambios que las personas han sufrido.

Todos en algún momento hemos sentido estrés o ansiedad. Pero, ¿realmente sabemos que es el estrés? El estrés encontramos que es es la respuesta física o mental a una causa externa, como tener muchas tareas o padecer de una enfermedad. Un estresor o factor estresante puede ser algo que ocurre una sola vez o a corto plazo, o puede suceder repentinamente durante mucho tiempo. Conociendo un poco sobre la definición de estrés podemos darnos cuenta que el estrés lo podemos relacionar facilmente con el COVID 19, debido a que el COVID 19 fue algo que cambió nuestro estilo de vida de manera repentina.

Sabemos que el estrés va muy de la mano con la ansiedad, por lo tanto: ¿Qué es la ansiedad? La ansiedad es la reacción del cuerpo al estrés y puede ocurrir incluso si no existe una amenaza real. El estrés puede traer consigo muchos efectos que se presentan en tu cuerpo, estado de ánimo he incluso en el comportamiento de la persona, algunos de estos efectos son:

  • Dolor de cabeza.

  • Tensión muscular.

  • Dolor en el pecho.

  • Fatiga.

  • Malestar estomacal.

  • Problemas de sueño.

  • Ansiedad.

  • Inquietud.

  • Arrebatos de ira.

Entre otros efectos que se pueden presentar. Es de suma importancia indagar sobre los niveles de estrés despues del covid, ya que el estrés en el cuerpo humano se puede manifestar de muchas maneras y traer problemas a corto y largo plazo.

Métodos

Histograma de frecuencia

¿Que es un histograma de frecuencia?

Un histograma de frecuencia es simplemente un gráfico que permite representar datos continuos, este tipo de histograma es muy parecido a las graficas de barras.

A continuación vamos a utilizar la Frecuencia absoluta. La frecuencia absoluta es las veces que aparece un valor o un determinado intervalo y es representado por ‘fi’. La suma de todas las frecuencias absolutas es igual al número total de datos.

Grafico 1:

pl <- ggplot(datosEstres,aes(x=Angustia))
pl+ geom_histogram(binwidth = 0.3, col='black', fill='red', alpha=0.4)+ xlab('Ha padecido muy seguido de Angustia en una escala del 1 al 5') + ylab('Frecuencia') + ggtitle('Histograma Angustia')

Como se aprecia en el histograma, la mayoria de las personas entrevistadas sufrió de angustia durante el periodo.

Grafico 2:

pl <- ggplot(datosEstres,aes(x=`De una escala del 1 al 5 ¿Cómo afecto la pandemia a sus ingresos?`))
pl+ geom_histogram(binwidth = 0.3, col='black', fill='red', alpha=0.4)+ xlab('¿Cómo afecto la pandemia a sus ingresos? De una escala del 1 al 5') + ylab('Frecuencia') + ggtitle('Histaograma ¿Cómo afecto la pandemia a sus ingresos?')

Podemos observar que no a todas las personas les afectó demasiado en el ambito economico la pandemia, solo un poco fuera de lo normal.

Grafico 3:

pl <- ggplot(datosEstres,aes(x=`Depresión`))
pl+ geom_histogram(binwidth = 0.3, col='black', fill='red', alpha=0.4)+ xlab('¿tuviste depresion?') + ylab('Frecuencia') + ggtitle('Histograma Depresión')

Como podemos ver la mayoria de las personas sí tuvieron depresion, pero también hubo un grupo grande que no la tuvo

Grafico 4:

pl <- ggplot(datosEstres,aes(x=`Falta de sueño`))
pl+ geom_histogram(binwidth = 0.3, col='black', fill='red', alpha=0.4)+ xlab('Ha padecido fuertemente de falta de sueño. De una escala del 1 al 5') + ylab('Frecuencia') + ggtitle('Histograma Falta de sueño')

La mayoria de las personas tenian falta de sueño, solo un poco de personas no tenia la falta de sueño

Método k-means

¿Que es el método k-means?

k-means es un algoritmo no supevisado que nos ayuda a agrupar grupos basandose en las distintas características. La manera en que funciona es minimizando la suma de distancias entre cada objeto y el centroide de su grupo. Tiene tres pasos: una vez escogido el número de grupos, se elige k centroides en el espacio de los datos., después cada objeto es asignado a su centroide más cercano y por ultimo se actualiza el centroide de cada grupo tomando como centroide la posicion del promedio de los objetos pertencientes a dicho grupo

¿Cómo funciona k-means?

Los objetos son representados con vectores reales de d dimensiones y k-means va a contruir k grupos donde se va a minimizar la suma de distancia de los objetos, dentro de cada grupo, a su centroide. De esto se puede sacar la siguiente formula:

\[ \underset{\mathbf{S}}{\mathrm{min}}\; E\left(\boldsymbol{\mu_{i}}\right)=\underset{\mathbf{S}}{\mathrm{min}}\sum_{i=1}^{k}\sum_{\mathbf{x}_{j}\in S_i}\left\Vert \mathbf{x}_{j}-\boldsymbol{\mu}_{i}\right\Vert ^{2} \quad (1) \]

S es el conjunto de datos, sus elementos son los objetos representados por vectores, se tendrá k grupos con su correspondiente centroide μi. Cada que los centroides se actualicen se deberá de imponer una condición necesaria de extremo a la función E(μi), para la función cuadratica es:

\[ \frac{\partial E}{\partial\boldsymbol{\mu}_{i}}=0\;\Longrightarrow\;\boldsymbol{\mu}_{i}^{(t+1)}=\frac{1}{\left|S_{i}^{(t)}\right|}\sum_{\mathbf{x}_{j}\in S_{i}^{(t)}}\mathbf{x}_{j} \]

y se tomará el promedio de los elementos de cada grupo como nuevo centroide.

Pasos a seguir para este método

1.- Se observaran los datos de manera más visual a traves de una gráfica.

2.- se establece el número de grupos que vamos a agrupar

3.- Comparamos los resultados de la clasificación

4.- Se agrupan los datos en cluster y se grafican

Grafico 5:

ggplot(datosEstres, aes(datosEstres$`¿Cuál es tu rango de edad?`, datosEstres$`Que nuestro sistema de salud colapse.`)) + geom_point(aes(col=datosEstres$Género), size=4 )            

En la grafica se puede observar que en su mayoría eran mujeres pensaban que el sistema de salud iba a colapsar por la situación que se estaba viviendo, por otro lado, se puede interpretar que los hombres pensaban que tal vez o muy posiblemente podría ocurrir un colapso del sistema de salud

set.seed(101)
EstresCluster <- kmeans(datosEstres$`Que nuestro sistema de salud colapse.`, center=5, nstart = 20  )
EstresCluster
## K-means clustering with 5 clusters of sizes 34, 1, 14, 6, 1
## 
## Cluster means:
##   [,1]
## 1    5
## 2    2
## 3    4
## 4    3
## 5    1
## 
## Clustering vector:
##  [1] 1 1 3 5 1 1 3 4 1 3 1 3 1 1 1 1 1 1 1 4 3 4 1 4 1 1 3 4 3 1 3 1 1 1 1 1 1 3
## [39] 3 1 1 1 3 1 4 2 1 3 1 3 1 1 1 3 1 1
## 
## Within cluster sum of squares by cluster:
## [1] 0 0 0 0 0
##  (between_SS / total_SS = 100.0 %)
## 
## Available components:
## 
## [1] "cluster"      "centers"      "totss"        "withinss"     "tot.withinss"
## [6] "betweenss"    "size"         "iter"         "ifault"
table(EstresCluster$cluster, datosEstres$`Que nuestro sistema de salud colapse.`)
##    
##      1  2  3  4  5
##   1  0  0  0  0 34
##   2  0  1  0  0  0
##   3  0  0  0 14  0
##   4  0  0  6  0  0
##   5  1  0  0  0  0

Grafico 6:

clusplot(datosEstres, EstresCluster$cluster, color=T, shade=T, lines=0)
## Missing values were displaced by the median of the corresponding variable(s)

Se puede observar un grupo completamente identificado, gracias a que solo era ese dato, pero con los demás grupos se puede apreciar que no es tan sencillo de identificarlos cada uno, pues los grupos están encimados uno con otro.

Método regresión lineal

¿Que es el analisis de regresión linal?

Es un método utilizado para predecir el valor de una variable según el valor de otra. Este analisis estima los coeficientes de la ecuación lineal, puede involucrar una o más variables independientes que ayuden a mejorar la predicción de la variable dependiente.

¿Cómo funciona la regresión lineal?

El modelo describe la relación entre una variable dependiente Y como una función de una o varias varibles independientes Xi. La ecuación de un modelo de regresión lineal es:

\[ Y = \beta_0 + \sum \ \beta_i X_i + \epsilon_i \]

Donde β representa estimaciones de parametros que deben ser calculados y ϵ representa los terminos de error

Pasos a seguir para este método

1.- Selección de variables

2.- Se realiza una matriz de dispersión

3.- Se realiza una recta de los minimos cuadrados

Grafico 7:

datosRegresion<-read_csv("regresion.csv")
## Rows: 56 Columns: 3
## -- Column specification --------------------------------------------------------
## Delimiter: ","
## dbl (3): PosibilidadcContagio, CambioRutina, FaltaDinero
## 
## i Use `spec()` to retrieve the full column specification for this data.
## i Specify the column types or set `show_col_types = FALSE` to quiet this message.
pairs(datosRegresion)

No parece haber una relación entre la posibilidad de contagio que piensan los encuestados con la falta de dinero que sufren los encuestados.

regresion <- lm(datosRegresion$PosibilidadcContagio ~ datosRegresion$FaltaDinero, data = datosRegresion )
summary(regresion)
## 
## Call:
## lm(formula = datosRegresion$PosibilidadcContagio ~ datosRegresion$FaltaDinero, 
##     data = datosRegresion)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.8385 -0.6312  0.1615  0.7360  1.5870 
## 
## Coefficients:
##                            Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                  2.1366     0.4564   4.682 1.95e-05 ***
## datosRegresion$FaltaDinero   0.4255     0.1159   3.670 0.000556 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.04 on 54 degrees of freedom
## Multiple R-squared:  0.1997, Adjusted R-squared:  0.1848 
## F-statistic: 13.47 on 1 and 54 DF,  p-value: 0.0005558

Del modelo se obtuvo que la R cuadrada ajustada es de 0.1848, por lo que este modelo no nos puede explicar la correlación de nuestras variables.

Resultados y discusión

Grafico 8:

clusplot(datosEstres, EstresCluster$cluster, color=T, shade=T, lines=0)
## Missing values were displaced by the median of the corresponding variable(s)

Se puede observar que solo el grupo donde hubo una respuesta, es el que k-means identificó mejor, por otro lado se puede ver que los otros datos están más dispersos y es más notorio debido a que los grupos de distintos colores están encimados unos de otros.

Grafico 9:

datosRegresion<-read_csv("regresion.csv")
## Rows: 56 Columns: 3
## -- Column specification --------------------------------------------------------
## Delimiter: ","
## dbl (3): PosibilidadcContagio, CambioRutina, FaltaDinero
## 
## i Use `spec()` to retrieve the full column specification for this data.
## i Specify the column types or set `show_col_types = FALSE` to quiet this message.
pairs(datosRegresion)

Tomando en cuenta la matriz anteriormente mostrada, se podría decir que no hay una relación entre la posibilidad de contagio y la falta de dinero según los encuestados, pues los datos están muy dispersos

Conclusión personal

En conclusión, esta pandemia para algunos pudo haber sido unos años estresantes por la insertidumbre del momento, problemas economicos y el cambio tan repentino que se dio, pero esta no fue la realidad para todos, pues tomando en cuenta las respuestas de los encuestados, algunos no estuvieron tan preocupados. Por esto es dificil la predicción del comportamiento humano, pues lo que para uno es estresante para otra persona no necesariamente lo es.

Pero no por ello se puede negar que hay una cierta población que está sufriendo o sufrió constante estrés, cosa a la cual se le debe de tomar en cuenta, pues si la situación sigue así puede traer diversos problemas a ese sector, he ahí la importancia de hacer un estudio a fondo sobre este tema y saber como tratarlo.

Bibliografía

Mayo Clinic. (4 de abril de 2019). Síntomas de estrés: consecuencias en tu cuerpo y en tu conducta. Obtenido de https://www.mayoclinic.org/es-es/healthy-lifestyle/stress-management/in-depth/stress-symptoms/art-20050987#:~:text=El%20estr%C3%A9s%20que%20no%20se,la%20obesidad%20y%20la%20diabetes.

National Institute of Mental Health. (s.f.). ¡Estoy tan estresado! hoja informativa. Obtenido de https://www.nimh.nih.gov/health/publications/espanol/estoy-tan-estresado#:~:text=El%20estr%C3%A9s%20es%20la%20respuesta,suceder%20repetidamente%20durante%20mucho%20tiempo.v

TIBCO. (s.f.). ¿Qué es el aprendizaje supervisado? Obtenido de https://www.tibco.com/es/reference-center/what-is-supervised-learning

Descarga el código

xfun::embed_file("Estres post Covid.Rmd")

Download Estres post Covid.Rmd

Descarga los datos utilizados

xfun::embed_file("AnalisisEstres2021.csv")

Download AnalisisEstres2021.csv

xfun::embed_file("regresion.csv")

Download regresion.csv