Al comenzar siempre es importante establecer el idioma adecuado para que el programa reconozca caractreres especiales. En el caso de definir al idioma español, la instrucción a utilizar es:
Sys.setlocale("LC_ALL", "en_US.UTF-8")
## [1] "en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/C"
Sys.setenv(LANG = "es")
También es importante instalar las librerías que se utilizarán posteriormente:
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.1 ──
## ✓ ggplot2 3.3.5 ✓ purrr 0.3.4
## ✓ tibble 3.1.6 ✓ dplyr 1.0.8
## ✓ tidyr 1.2.0 ✓ stringr 1.4.0
## ✓ readr 2.1.2 ✓ forcats 0.5.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
Además es muy relevante establecer la ubicación del directorio de trabajo, para que el programa identifique el archivo del que extraerá y, también, guarde la información solicitada.
getwd() ##directorio actual
## [1] "/Users/Gustavo 1/Dropbox/R/Rmarkdown"
list.files() ##Esta permite enlistar los archivos dentro del directorio
## [1] "Actividad_1.html"
## [2] "Actividad_1.Rmd"
## [3] "Actividad_2_Exploracion_Descripcion.pdf"
## [4] "Actividad_2.html"
## [5] "Actividad_2.Rmd"
## [6] "Actividad_3_1_.html"
## [7] "Actividad_3_Estadistica_Descriptiva.pdf"
## [8] "Actividad_3-1-.html"
## [9] "Actividad_3(1).Rmd"
## [10] "Actividad_4_files"
## [11] "actividad_4_inferencia.Rmd"
## [12] "Actividad_4. Probabilidad y Distribución Normal.pdf"
## [13] "Actividad_4._Probabilidad_Distribucion_Normal.pdf"
## [14] "Actividad_4.html"
## [15] "Actividad_4.Rmd"
## [16] "Actividad_5_Inferencia_Est.docx"
## [17] "Actividad_5_Inferencia_Est.html"
## [18] "Actividad_5_Inferencia_Est.pdf"
## [19] "Actividad_5_Inferencia_Est.Rmd"
## [20] "actividad_6_intervalos_confianza.html"
## [21] "actividad_6_intervalos_confianza.Rmd"
## [22] "Actividad_7_Contingencia_Correlacion.html"
## [23] "Actividad_7_Contingencia_Correlacion.Rmd"
## [24] "actividad_correlacion.html"
## [25] "actividad_correlacion.Rmd"
## [26] "actividad_regresion_lineal_simple.html"
## [27] "actividad_regresion_lineal_simple.Rmd"
## [28] "actividad_regresion_lineal.html"
## [29] "actividad_regresion_lineal.Rmd"
## [30] "actividad_regresion_logit.html"
## [31] "actividad_regresion_logit.Rmd"
## [32] "add in ymlthis.png"
## [33] "adiciones a modelos OLS.Rmd"
## [34] "adiciones-a-modelos-OLS.html"
## [35] "analisis_clusters.html"
## [36] "analisis_clusters.Rmd"
## [37] "apa.csl"
## [38] "bibliografia partidos_prueba.bib"
## [39] "comandos chunks en rmd.Rmd"
## [40] "comandos-chunks-en-rmd.html"
## [41] "confidence_intervals_Coursera_2.rmd"
## [42] "confidence_intervals_Coursera.rmd"
## [43] "diseno yaml.Rmd"
## [44] "diseno-yaml.html"
## [45] "dist_normal.png"
## [46] "dist_z_t.png"
## [47] "distill.png"
## [48] "ha_h0.gif"
## [49] "inf_for_numerical_data.Rmd"
## [50] "intervalo_confianza.png"
## [51] "intro_MCA.html"
## [52] "intro_MCA.Rmd"
## [53] "intro_to_data_Coursera.rmd"
## [54] "intro_to_r_coursera_2.Rmd"
## [55] "intro_to_r_Coursera.Rmd"
## [56] "metodologia.bib"
## [57] "papaja.png"
## [58] "poblacion_muestra.png"
## [59] "potencia.png"
## [60] "presentacion_reg_logit_ordinal.html"
## [61] "presentacion_reg_logit_ordinal.Rmd"
## [62] "probability_Coursera.Rmd"
## [63] "prueba chunks.Rmd"
## [64] "prueba de YAML.Rmd"
## [65] "prueba sintax markdown.Rmd"
## [66] "prueba_uso_markdown_files"
## [67] "prueba_uso_markdown.html"
## [68] "prueba_uso_markdown.Rmd"
## [69] "prueba-chunks_files"
## [70] "prueba-chunks.html"
## [71] "prueba-de-YAML.html"
## [72] "prueba-de-YAML.pdf"
## [73] "prueba-sintax-markdown.html"
## [74] "pruebas_hipotesis_bivariadas.html"
## [75] "pruebas_hipotesis_bivariadas.Rmd"
## [76] "references.bib"
## [77] "regresion_efectos_fijos.html"
## [78] "regresion_efectos_fijos.Rmd"
## [79] "regresion_lineal_multiple.html"
## [80] "regresion_lineal_multiple.Rmd"
## [81] "regresion_lineal_simple_presentacion.html"
## [82] "regresion_lineal_simple_presentacion.Rmd"
## [83] "rsconnect"
## [84] "rticles.png"
## [85] "sampling_distributions_Coursera.rmd"
## [86] "script_reg_lineal.R"
## [87] "sintax_markdown.html"
## [88] "sintax_markdown.Rmd"
## [89] "syllabus sistemas politicos comparados uabc 2022-2.Rmd"
## [90] "syllabus-sistemas-politicos-comparados-uabc-2022-2.pdf"
## [91] "vars_democ_latinob.png"
## [92] "ventana_config_basica_yaml.png"
## [93] "ventana_plantillas_articulos.png"
## [94] "ventana_selec_plantilla_yaml.png"
## [95] "zotero1.png"
## [96] "zotero2.png"
## [97] "zotero3.png"
Una vez establecido el directorio de trabajo, se debe cargar la base de datos o data frame en el ambiente del programa. Para ello se trabajará con la información sobre los pacientes infectados por COVID-19 reportados por la Secretaría de Salud del gobierno federal mexicano, que se encuentra en formato “.csv”.
datos_covid <- read.csv("/Users/Gustavo 1/Dropbox/R/200613COVID19MEXICO.csv", header = TRUE) #ruta de acceso a los datos, 'header = TRUE' en caso de que el archivo cuente con nombres de las variables.
¿Cuál debe ser el valor que adoptará una variable en una población?, ¿cómo aproximarnos para intentar conocer el valor “verdadero” de una variable que, así, nos permita identificar a dicha característica de una población?. ¿Cómo evaluar la característica de interés observada en una muestra para, posteriormente, entender a la misma en la población?
Asumir que las variables son aleatorias supone considerar que los valores que llegamos a calcular a partir de los datos disponibles contienen, a su vez, un elemento aleatorio, o que el azar la “afecta” en su distribución de valores posibles.
Inicialmente, para conocer una característica o variable de la realidad, requerimos información completa sobre la población que analizamos. En ocasiones esto se logra mediante el levantamiento de información censal o registros administrativos (por ej. censos poblacionales, reportes de resultados electorales, registros de votación legislativa, entre otros). Sin embargo, es muy frecuente que este tipo de información sea difícil y costosa para generar y, también, se corre el riesgo de desactualizarse rápidamente.
Una solución para intentar conocer dichos valores de variables es a
través del uso de información muestral. Una muestra es
un subconjunto de individuos o casos que, a su vez, forman parte de la
población objetivo que se desea conocer.
Si bien se desea que las muestras construidas sean lo más representativas, o cercanas a contener la mayoría de las características de la población en su interior, también es importante reconocer que pueden integrarse diversas muestras que, al final, cumplan dicho criterio de representatividad y, además, que todas contienen dos tipos de error: un error aleatorio y un error sistemático. Y este debe ser calculado e incorporado en el análisis estadístico de los datos.
De manera que, al trabajar con muestras que, a su vez, contienen error, entonces requiere que evaluemos constantemente a los valores calculados para nuestra variable de interés y, así, reflexionar si éste refleja al valor de la misma en la población. A su vez, la manera de realizar esta evaluación será mediante el cálculo de probabilidades.
Un requisito básico para la integración de una muestra que pueda considerarse representativa de la población consiste en el uso del criterio de la aleatoriedad, al momento de seleccionar a los individuos o casos de interés. La utilidad de dicho criterio consiste en que, de alguna manera, permite replicar la distribución de las características de la población en la muestra integrada.
Esto se apoya en lo siguiente: primero se parte de la consideración que la población se distribuye de manera aleatoria, como se verá más adelante con el Teorema del Límite Central. Y, por tanto, al recuperar el criterio de la aleatoriedad para la integración de una muestra, entonces también se estaría replicando al mismo mecanismo de distribución dentro de la muestra.
Dicha aleatoriedad, al momento de definir el tamaño de una muestra, supone dos aspectos específicos:
En la medida de lo posible se busca que el nivel de confianza sea lo más amplio posible, a la vez que se busca reducir el error al mínimo esperable, pero se debe tomar en cuenta que estos son elementos complementarios. Usualmente se define, de manera estándar para las ciencias sociales, un nivel de confianza del 95% y un error del 5% (Salkind, 2013; Cobo, 2017; Vilas, 2016), lo que permite un margen pertinente para realizar inferencias estadísticas, posteriormente.
Dos elementos a considerar al momento de realizar el cálculo de los tamaños de muestra consisten en:
Cuando se desconoce el tamaño de la población, el tamaño de muestra se calcula a partir de:
\[n = [Z^{2}* \sigma^{2}] /E^2\]
Por ejemplo, una casa consultora en temas de opinión pública desea levantar una encuesta para medir la intención del voto entre los candidatos presidenciales en un país que celebrará elecciones próximamente. Para ello desean calcular el tamaño de muestra pero desconocen el tamaño de la población. ¿Cuál debe ser el tamaño de la muestra para un nivel de confianza del 95% y un error de muestreo del 5%?
z_95 <- qnorm(0.025, lower.tail = FALSE) #Cálculo del cuartil o valor "z" del nivel de confianza deseado
n1 <- (((z_95) ^ 2) * (6 ^ 2)) /
0.05 ^ 2 #Aplicación de la fórmula
n1
## [1] 55317.01
Si se conoce el tamaño de la población (N), esto también permite calcular los valores del parámetro de su media (\(\mu\)) y la desviación estándar (\(\sigma\)), entonces el tamaño de muestra calcula a partir de:
\[n = \frac{N*Z^{2}*\sigma^{2}}{(N-1)}*(E^{2} + Z^{2}*\sigma^2)\] Donde: * \(N\) = tamaño de la población, * \(Z\) = nivel de confianza en unidades z, * \(\sigma\) = desviación estándar de la población, * \(E\) = tamaño del error esperado.
Por ejemplo, si la misma casa consultora quiere levantar dicha encuesta en una población integrada por 90,036,367 de electores a partir de seleccionar a partir del criterio la edad del votante, cuya media es de 41 años y una desviación estándar es de 16.47 años (datos del INE al 10 de julio de 2020), con un nivel de confianza del 95% y un error de muestreo del 5%.
n2 <- ({90036367 * (z_95^2) * (16.47^2)} /
{(90036367 -1) * (0.05^2) + (z_95 ^ 2) * (16.47 ^2)})
n2
## [1] 414894.3
Cuando no se tiene información sobre el tamaño de la población, y tampoco sobre sus parámetros para la variable de interés, se utiliza la siguiente fórmula:
\[n = \frac{Z^{2}pq}{E^{2}}\]
Por ejemplo, la misma casa encuestadora desea levantar otra encuesta sobre la intención del voto a partir del criterio del evento de interés sobre el voto de los electores por el partido en el gobierno, pero desconoce el tamaño de la población. ¿Cuál sería el tamaño de la muestra con un nivel de confianza del 95% y un error del 5%?
n3 <- {(z_95^2) * 0.5 * 0.5} /
0.05^2
n3
## [1] 384.1459
En el caso de no conocer el tamaño de la población, y por tanto también se desconoce la proporción de éxito del evento de interés se tiende a asumir una postura “conservadora” sobre la probabilidad de ocurrencia del mismo. Dicha probabilidad se considera que es del 50% de éxito.
Mientras que en el caso de que sí se conozca el tamaño de la población, se utiliza la siguiente fórmula:
\[n = [N * Z^{2} pq] / (N-1)*E^{2} + Z^{2}pq\]
Por ejemplo, si la casa encuestadora desea levantar la misma encuesta a partir del mismo criterio –la proporción de votantes por el partido en el gobierno–, y donde conoce que el tamaño del listado nominal es de 90036367 y que en la elección pasada votó el 53.19% por el partido gobernante, ¿cuál será el tamaño de muestra con un nivel de confianza del 95% y un error de muestreo del 5%?
n4 <- {90036367 * (z_95^2) * 0.5319 * (1 - 0.5319)} /
{(90036367-1) * (0.05 ^ 2) + (z_95 ^ 2) * 0.5319 * (1 - 0.5319)}
n4
## [1] 382.5806
Donde: * \(p\) = proporción de éxito del evento de interés, * \(q\) = proporción de fracaso del evento de interés o \((1-p)\).
Si se reconoce la importancia del criterio de la aleatoriedad en la integración de las muestras, también se puede asumir que esto afectará al resto de los elementos del análisis cuantitativo introduciendo el fenómeno de la incertidumbre en las estimaciones que se generen desde una muestra para, así, conocer a la población.
Para aproximarnos a conocer los valores y, además, el comportamiento de una variable es importante comenzar por asumir que sin información previa sobre la realidad absoluta, todas las variables que percibimos están condicionadas por el azar. Lo que, a su vez, supone que las variables se comportan de manera aleatoria y, también, conocerlas implica asumir que hay un margen de incertidumbre implícito al intentar estimarlas.
La incertidumbre puede ser “medida” a través del uso de la probabilidad, que es una medida de riesgo sobre la posibilidad de ocurrencia de un evento de interés.
Existen distintas definiciones de probabilidad:
1 / 6 # 1 se refiere a un solo resultado que se espera ocurrirá, y 6 se refiere a los 6 resultados posibles (espacio muestral o espacio de eventos posibles)
## [1] 0.1666667
tabla<-table(datos_covid$RESULTADO) #crea un objeto con tabla
tabla_prop<-prop.table(tabla) #solicita las proporciones por atributo de la tabla
tabla_marg<-addmargins(tabla_prop) #solicita los valores marginales
tabla_marg #arroja los porcentajes para cada atributo, además de la suma o porcentaje marginal.
##
## 1 2 3 Sum
## 0.3551667 0.5031400 0.1416933 1.0000000
tabla_S_R<-table(datos_covid$RESULTADO, datos_covid$SEXO) #creación de una tabla de dos vías, primero se definen las filas y después las columnas.
tabla_S_R_p<-prop.table((tabla_S_R), margin = 2) #cálculo de las proporciones para cada celda, "margin=2" solicita porcentajes por columna.
tabla_S_R_m<-addmargins(tabla_S_R_p, margin = 1) #adición de las sumas marginales, "margin=1" solicita la suma de valores por columna.
tabla_S_R_m #resultado final
##
## 1 2
## 1 0.3213871 0.3877645
## 2 0.5373364 0.4701400
## 3 0.1412765 0.1420955
## Sum 1.0000000 1.0000000
De esta manera se puede establecer que cada resultado o atributo posible de una variable tendrá una probabilidad asociada que, axiomáticamente, adoptará un valor que se ubicará entre 0 y 1, la suma de las probabilidades de todos los resultados posibles será igual a 1 (certidumbre total) y, en ocasiones, estas probabilidades pueden estar condicionadas por otras variables y, así, modificar su frecuencia relativa en cada celda.
La utilidad de las probabilidades para el análisis estadístico radica en dos aspectos: el estudio de las probabilidades es la base para el entendimiento de la curva de distribución normal pues permite comprender la probabilidad asociada a cada resultado o valor posible de la variable de interés. Y además es la base para la inferencia estadística pues permite determinar el grado de confianza en el que se basa el analista para establecer si un resultado observado es “verdadero”, o para establecer si dicho resultado pudo haber ocurrido debido al azar o a cualquier otro factor antecedente (Salkind, 2013).
Una variable aleatoria presente en la población, de la que se asume que es guiada por el azar, cuyo tamaño de muestra es mayor a 30 casos y de la que se obtuvieron muestras repetidas de manera independiente, se considera que tenderá a distribuirse de manera normal o con una forma parecida a una curva de campana.
Las características de la distribución normal consisten en: 1. Los valores de la media, mediana y moda de la distribución son idénticos.
x<- seq(-4, 4, 0.1) #vector para el eje X
normal<-dnorm(x) #vector para el eje Y
summary(x)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## -4 -2 0 0 2 4
plot(x, normal, type = "l") #gráfica del par de vectores
Dicha curva de distribución normal permite identificar que para cada valor ubicado en el eje X se corresponde con una probabilidad de ocurrencia que se distribuye en el eje Y. De manera que un evento que se ubica en los extremos de los valores del eje X contará con una probabilidad baja, mientras que un evento X con un valor cercano al valor de su media entonces se corresponde con una probabilidad alta (cercana al 50% propia del valor de la media).
El Teorema del Límite Central es la propuesta teórica en la que se apoya la importancia de la distribución normal para, así, asignar probabilidades a distintos valores de una variable aún cuando la distribución de una variable analizada en una muestra no presenta una forma “normal”. Lo que le da sustento, también, al proceso de la inferencia estadística.
Los dos supuestos básicos del teorema del límite central consisten en:
Esto se resume en que, a medida que se aumenta la cantidad de muestras recolectadas de una misma población, resultará en un conjunto de valores (por ejemplo, la media para cada muestra recolectada) que se aproximarán a una distribución normal (o la distribución de todas las medias de dichas muestras, o distribución muestral).
Por ejemplo, se pueden construir 3 muestras con distintos números de casos, en uno se incluyen 50 individuos mientras que en otro se incluyen 1,000, y 10,000.
Muestra de 50 casos:
set.seed(4321) # definición de un número común para todas las muestras aleatorias
submuestra_50 <- datos_covid %>% #creación de un objeto "muestra_50" a partir del data frame "datos_covid"
sample_n(size = 50) # creación de una muestra aleatoria de n = 50
Muestra de 1,000 casos:
set.seed(4321)
submuestra_1000 <- datos_covid %>% #creación de un objeto "muestra_1000" a partir del data frame "datos_covid"
sample_n(size = 1000) # creación de una muestra aleatoria de n = 1000
Muestra de 10,000 casos:
set.seed(4321)
submuestra_10000 <- datos_covid %>% #creación de un objeto "muestra_10000" a partir del data frame "datos_covid"
sample_n(size = 10000) # creación de una muestra aleatoria de n = 10000
Comparación de los valores de la media y desviación estándar en las submuestras. Datos descriptivos para muestra de 50 casos:
submuestra_50 %>%
summarise(media_50 = mean(EDAD),
sd_50 = sd(EDAD))
## media_50 sd_50
## 1 44.1 16.66629
Media y desviación estándar para muestra de 1,000 casos:
submuestra_1000 %>%
summarise(media_1000 = mean(EDAD),
sd_1000 = sd(EDAD))
## media_1000 sd_1000
## 1 42.663 17.21574
Media y desviación estándar para muestra de 10,000 casos:
submuestra_10000 %>%
summarise(media_10000 = mean(EDAD),
sd_10000 = sd(EDAD))
## media_10000 sd_10000
## 1 42.8475 16.5989
Se puede observar que en las muestras la media de edad y su desviación estándar son muy cercanas entre sí, aunque no son idénticas. Esto permite reflexionar sobre la posición / valor del valor de la media de edad para la población.
Sin embargo para lograr un mejor acercamiento a la posición del valor de la media en la población es necesario construir la distribución de medias a partir de distintas muestras, o mejor conocida como la distribución muestral. Para ello se debe activar primero la función que permita realizar distintas muestras de un mismo tamaño:
rep_sample_n <- function(tbl, size, replace = FALSE, reps = 1)
{
n <- nrow(tbl)
i <- unlist(replicate(reps, sample.int(n, size, replace = replace),
simplify = FALSE))
rep_tbl <- cbind(replicate = rep(1:reps,rep(size,reps)), tbl[i,])
dplyr::group_by(rep_tbl, replicate)
}
Posteriormente, se utiliza la función de rep_sample_n(),
definiendo el tamaño de las muestras a simular, así como la cantidad de
muestras a reproducir en el cálculo de la distribución
muestral, de la siguiente manera:
set.seed(4321)
dist_muestral <- datos_covid %>% #guardar a la "distribución muestral"
rep_sample_n(size = 100, # tamaño de cada una de las muestras
reps = 15000, # cantidad de muestras a repetir o crear
replace = TRUE) # reemplazo de los casos seleccionados
De esta manera se ha construido una distribución muestral de medias que se integra por 15000 muestras de tamaño 100, y que se integró por 1,500,000 casos en donde la media muestral es de 42.56 años. Este se puede ubicar como el valor más cercano al valor poblacional de la edad media de los individuos registrados.
media_muestral <- mean(dist_muestral $ EDAD)
desv_est_muestral <- sd(dist_muestral $ EDAD)
media_muestral
## [1] 42.56675
desv_est_muestral
## [1] 16.69306
Graficación de la distribución muestral de las medias para todas las muestras integradas:
dist_muestral %>%
ggplot(aes(EDAD)) +
geom_density(fill = "dodgerblue", alpha=0.5) +
geom_vline(xintercept = media_muestral, size = 1.5, color = "red") +
geom_text(aes(x = media_muestral + 10,
y = 0.0225),
label = paste0("Media\n", media_muestral)) +
labs(title = "Distribución muestral",
x = "medias",
y = "probabilidad")
A partir de la distribucion muestral es que se puede observar el
funcionamiento del Teorema del Límite Central,
y de esta manera se puede identificar que existe una probabilidad
asignada \(P(x)\) para cada valor de
\(X\).
Esta asociación entre valores posibles de \(X\) y sus probabilidades correspondientes
(\(P(X)\)) se le denomina
distribución de probabilidades. Esta consiste en
“la cuantificación de todos los valores que puede tomar una variable
aleatoria X” en donde se puede asociar con “la probabilidad de que
los valores de una variable caigan dentro de un intervalo particular”
debajo de la curva de distribución (Vilalta, 2016: 77-78).
Toda distribución de una variable aleatoria que sigue una distribución normal se puede transformar de sus medidas originales (X) hacia las unidades de desviación estándar (\(Z\)) mediante el proceso de estandarización de la variable misma.
Dicha estandarización se realiza mediante la fórmula: \[Z = \frac{(x_i - \mu_x)}{\sigma_x}\]
De manera manual, se puede transformar una variable \(X\) a sus unidades estandarizadas (o en unidades de desviación estándar) de la siguiente forma:
datos_covid <- datos_covid %>%
mutate(EDAD_z = (EDAD - mean(EDAD)) / sd(EDAD)) #creación de la variable EDAD_z estandarizada
De manera que una curva de distribución normal en la que los valores de la variable \(X\) han sido estandarizados se denomina como distribución normal estandarizada, y el valor de su media será de 0 y la desviación estándar será igual a 1.
Por lo que diversas variables medidas en distintas unidades, al ser estandarizadas entonces podrán compararse directamente entre sí en términos de su ubicación relativa respecto a sus propias distribuciones.
media_z <- mean(datos_covid $ EDAD_z)
sd_z <- sd(datos_covid $ EDAD_z)
media_z
## [1] -1.615785e-16
sd_z
## [1] 1
Y la graficación de la distribución estandarizada de una variable:
datos_covid %>%
ggplot(aes(EDAD_z)) +
geom_density(fill = "dodgerblue", alpha=0.5) +
geom_vline(xintercept = media_z, size = 1.5, color = "red") +
geom_text(aes(x = media_z + 1,
y = 0.35),
label = paste0("Media\n", media_z)) +
labs(title = "distribución estandarizada",
x = "unidades Z",
y = "probabilidad")
A partir de la forma de la distribución normal estándar se puede calcular y, así, conocer la probabilidad de ocurrencia asociada a cada uno de los valores estandarizados de la variable \(X\).
Inicialmente se conoce que por debajo, o a la izquierda, de la media
(con valor 0 unidades de desviación estándar) hacia infinito negativo se
encuentra el 50% de los casos; o existe una probabilidad de 50% de
encontrar un valor de \(X\) por debajo
de su media. Y de manera simétrica ocurrirá por encima de la media,
hacia infinito positivo.
En R se puede calcular la probabilidad asociada a cada
valor de \(X\) mediante el comando
pnorm(). Los argumentos que se necesitan especificar son:
cuantil o valor en unidades de desviación estándar de \(X\), el valor de la media de \(X\) y el valor de la desviación estándar
para la distribución de \(X\).
pnorm(0, #valor de cuantil, o estandarizado o en unidades de desviación est (z).
mean = 0, # valor de la media de X
sd = 1) #valor de la desviación estándar
## [1] 0.5
#probabilidad de encontrar 0 con una media = 0 y sd = 1. 'pnorm()`calcula la probabilidad simple o el área a la izquierda del valor deseado debajo de la curva de distribución normal estándar.
Por ejemplo, si se desea conocer la probabilidad de encontrar a un paciente con síntomas covid y que tiene una edad menor a 25 años, entonces se debe conocer, primero, el valor de la media para la variable de interés (edad) y su desviación estándar.
px_25 <-pnorm(25,
mean = mean(datos_covid $ EDAD), #media para la variable "edad"
sd = sd(datos_covid $ EDAD)) #desviación estándar para la variable "edad"
px_25
## [1] 0.1462245
Dicha probabilidad es de 0.1462245. Si esta se convierte a unidades porcentuales, entonces es de 14.6224464.
Por otro lado, si se desea conocer la probabilidad de encontrar a un
paciente que dio positivo a la prueba covid y que tiene una edad menor a
25 años, entonces se deben realizar algunos pasos adicionales.
Primero se debe crear una submuestra de los casos en donde solo se
encuentren las personas que resultaron positivos en la prueba covid.
Para ello se utiliza el comando filter() a partir de la
variable “Resultado”.
datos_positivos <- datos_covid %>%
filter(RESULTADO == 1) #exactamente igual a 1, que corresponde a los resultados positivos en la prueba covid.
Posteriormente se calcula la probabilidad asociada a las personas
según el valor de interés a conocer, que se refiere a las personas de 25
años o menos, mediante el comando pnorm().
px_25_posit <-pnorm(25,
mean = mean(datos_positivos $ EDAD),
sd = sd(datos_positivos $ EDAD),
lower.tail = TRUE)
px_25_posit
## [1] 0.09788945
Dicha probabilidad es de 0.0978894. Si esta se convierte a unidades
porcentuales, entonces es de 9.7889447.
Este ejercicio se refiere al cálculo de la probabilidad asociada a una
variable de interés (tener 25 años o menos) que es condicionada por otra
variable (dar positivo a la prueba covid).
En cambio, si se desea conocer la probabilidad de un paciente que dio positivo a la prueba de COVID-19 y que es mayor a 25 años, entonces se está buscando el complemento de la probabilidad recién calculada. Sabiendo la probabilidad anterior, para calcular el complemento o la parte derecha de la distribución respecto del valor de interés (25 años), entonces se debe realizar lo siguiente:
1 - px_25_posit #probabilidad de encontrar a un paciente positivo de COVID mayor a 25 años
## [1] 0.9021106
Este porcentaje mismo se puede solicitar desde el comando
pnorm(), en donde se utilice el argumento
lower.tail = FALSE, de la siguiente manera:
pnorm(25,
mean = mean(datos_positivos $ EDAD),
sd = sd(datos_positivos $ EDAD),
lower.tail = FALSE)
## [1] 0.9021106
Asimismo, a partir de dicha distribución normal estándar se puede calcular la probabilidad existente dentro de un rango de valores predefinidos por el investigador:
pnorm(1, mean = 0, sd = 1) - pnorm(-1, mean = 0, sd = 1) #para conocer la probabilidad existente dentro de un área limitada por dos valores z, se resta la probabilidad del valor menos al valor mayor.
## [1] 0.6826895
pnorm(2) - pnorm(-2) # la función `pnorm()` usa por default los valores de media = 0 y sd = 1, por lo que se pueden omitir al escribir el script
## [1] 0.9544997
##Ejercicio: escribir el script para calcular la probabilidad del área entre 3 y -3 desviaciones estándar.
pnorm(1.5, mean = 0, sd = 1, lower.tail = TRUE)
## [1] 0.9331928
1 - pnorm(1.5, mean = 0, sd = 1) #método de sustracción
## [1] 0.0668072
pnorm(1.5, mean = 0, sd = 1, lower.tail = FALSE) #definición de la cola de interés
## [1] 0.0668072
De manera que a partir de la función pnorm()se pueden
transformar los valores de \(X\) o
cuartiles \(Z\) en probabilidades o
percentiles. Pero a partir de la función qnorm()se pueden
transformar las probabilidades en cuartiles o unidades de desviación
estándar (z), de manera inversa. Por ejemplo, si se desea conocer el
valor del cuartil o unidad Z que define el límite del izquierdo o
inferior de la distribución y que incluye al 95% de los casos. Y dicho
valor es z = 1.64.
qnorm(0.95, #porcentaje o probabilidad que se desea conocer
mean = 0, sd = 1, #definición de la media y la desviación estándar de la distribución
lower.tail= TRUE) #valor lógico TRUE/FALSE que refiere a si se desea conocer el lado izquierdo de la probabilidad deseada
## [1] 1.644854
A partir de la forma de la distribución de una variable se puede estimar la probabilidad de un valor o resultado específico. Con estos elementos se puede establecer que “la estadística permite decidir la probabilidad de ocurrencia de un evento” (Salkind, 2013). Y si se le añade un criterio de decisión para evaluar la probabilidad de ocurrencia de dicho evento, entonces se podrá evaluar si éste es muy, algo o poco probable de que ocurra respecto a lo que ocurriría si fuese el azar el responsable de su distribución (Salkind, 2013).
De manera estándar para las ciencias sociales (Salkind, 2013) se ha definido un criterio por debajo del 5% (\(P(X)<0.05\)) para evaluar si un evento es muy poco probable que ocurra dado que, se asume, que ha sido el azar el responsable de su distribución. Por ejemplo, se desea conocer la probabilidad de encontrar a una persona contagiada de covid-19 que sea mayor de 75 años:
datos_covid %>%
filter(RESULTADO == 1) %>% #primero se filtran los datos para seleccionar solo a los pacientes contagiados con covid-19
summarise(media = mean(EDAD, na.rm = TRUE),
sd = sd(EDAD, na.rm = TRUE))
## media sd
## 1 45.9203 16.17126
pnorm(75,
mean = 45.9203, # edad media de los enfermos de covid-19
sd = 16.17126, # desviación estándar de los enfermos de covid-19
lower.tail = FALSE) # probabilidad por arriba de 75 años
## [1] 0.03607001
Pregunta: A partir del criterio estándar definido del 5%, ¿se puede aceptar la idea de encontrar a una persona mayor de 75 años contagiada de covid-19 si fuese el azar el responsable de la distribución de los casos?
Hasta aquí se ha observado que cada evento o valor de una variable \(X\) tiene asociado una probabilidad de ocurrencia particular. Y a partir de conocer la probabilidad de ocurrencia de dicho evento se puede tomar una decisión sobre su ocurrencia, ya sea muy, algo y poco probable. Esto es, si un evento tiene una probabilidad asociada menor a un criterio de decisión (en este caso se definió como criterio estándar la \(P(X)<0.05\)), entonces se considera que es muy poco probable observar dicho resultado en la realidad en caso de que haya sido el azar el responsable de su distribución. Esta lógica será la base para las pruebas de hipótesis estadísticas.