Code
source("~/R/r-data/16.eda/script.R")source("~/R/r-data/16.eda/script.R")Si en el punto anterior hacemos referencia a los distintos niveles de medición que podemos encontrar en Investigación Comercial, en este capítulo debemos seguir manteniendo esta diferenciación asimilando los mismos al análisis univariante cualitativo (escala nominal y ordinal) y al análisis univariante cuantitativo (escala de intervalo y métrica o razón).
Al analizar los datos, y en particular una serie de datos, el analista debe hacerse una idea lo más certera posible de las características de los mismos. Aquellos que hayan recibido formación estadística, reconocerán fácilmente que con el término características de la distribución estamos haciendo referencia a los aspectos básicos de tendencia de los datos, variabilidad de los mismos y forma de la distribución, siendo este último aspecto el menos conocido, ya que medidas como la media o la mediana (tendencia central) y la varianza o la desviación típica (dispersión o variablidad) son muy conocidos y no tanto índices de simetría, kurtosis (apuntamiento) u otros términos que iremos conociendo. Dependiendo también del tipo de dato, del nivel de medición para ser más exactos, conoceremos que hay medidas estadísticas más apropiadas para cada uno. En este capítulo, por tanto, mostramos al lector qué y cómo pueden calcularse diferentes mediciones que nos ayudan a comprender y caracterizar una distribución.
La fórmula más básica de tratamiento de una variable sería el cálculo de su distribución de frecuencias. Una frecuencia es el resultado de contar el número de casos en los que se produce la contingencia o suceso que estamos analizando. Por ejemplo, para una variable incluida en casi todos los archivos de datos como puede ser el género de la persona entrevistada, obtener la distribución de frecuencias sería saber cuántos hombres y mujeres hay en el fichero de datos. En este epígrafe y posteriores se agrupan la opción de cálculo de frecuencias (y porcentajes) con las mediciones básicas de cálculo. Del mismo modo que utilizamos la opción frecuencias, el analista desea en otras ocasiones y sobre todo cuando trabaja con variables numéricas métricas abordar el análisis de la serie de valores a partir de los datos derivados del cálculo de medidas de tendencia central, variabilidad de los datos u otras caracterizaciones de la distribución. El analista sin embargo debe saber qué estadísticos interpreta en cada caso, porque evidentemente el nivel de medición en el que está expresada cada variable, afecta a la posibilidad o no de interpretación de los resultados.
Una distribución de frecuencias informa sobre los valores que una variable ha recogido, indicando tanto el número de veces como ha aparecido cada uno de los valores que la conforman, como el porcentaje que supone este número de veces sobre el total de veces. Este análisis desarrollado en este epígrafe, sería válido para cualquier variable medida en cualquier nivel de medición, tanto cualitativa como cuantitativa. En nuestro ámbito de trabajo, en muchas ocasiones queremos conocer la frecuencia directa de los valores de la distribución (recuento), pero en otros casos nos gustará conocer las frecuencias de determinadas agrupaciones de valores. Este segundo caso tiene profundas implicaciones cuando de variables de repuesta múltiple se trata y es llamado tabulación marginal.
En R podemos obtener ambos análisis:
Veamos un ejemplo práctico. Imaginemos que tenemos una serie de puntuaciones recogidas en hasta 8 ciudades españolas diferentes. Deseamos conocer cuántas veces ha aparecido cada una de las ciudades definidas. La serie de valores es…
1 2 3 4 5 6 7 8 1 2 4 5 7 4 4 1 2 5 1 1 2 5 4 1 1 2 1 1 4 5 7 7 4 1 1 2 5 4 7 7 5 4 1 1 2 2 5 4 4 7
Entre los ficheros de datos que usaremos en este libro / curso online, disponemos de esta serie de números estructurada en filas (cada fila, un individuo, una puntuación). La variable se denomina CIUDAD y el fichero de datos se carga directamente desde Google Drive; es un fichero en formato SPSS (sav) por lo que está etiquetado. Mostramos la carga del archivo y sus diez primeros registros como muestra.
| CIUDAD | CIUDADESP | CIUDADAGR |
|---|---|---|
| A Coruña | 1 | 1 |
| Madrid | 2 | 2 |
| Valencia | 3 | 3 |
| Barcelona | 4 | 4 |
| Bilbao | 5 | 5 |
| Lleida | 6 | 6 |
| Jaén | 7 | 7 |
| Santander | 8 | 8 |
| A Coruña | 1 | 1 |
| Madrid | 2 | 2 |
| Barcelona | 4 | 4 |
| Bilbao | 5 | 5 |
| Jaén | 7 | 7 |
| Barcelona | 4 | 4 |
| 4 | 4 | |
| A Coruña | 1 | 1 |
| Madrid | 2 | 2 |
| Bilbao | 5 | 5 |
| A Coruña | 1 | 1 |
| 1 | 1 | |
| Madrid | 2 | 2 |
| Bilbao | 5 | 5 |
| Barcelona | 4 | 4 |
| A Coruña | 1 | 1 |
| 1 | 1 | |
| Madrid | 2 | 2 |
| A Coruña | 1 | 1 |
| 1 | 1 | |
| Barcelona | 4 | 4 |
| Bilbao | 5 | 5 |
| Jaén | 7 | 7 |
| 7 | 7 | |
| Barcelona | 4 | 4 |
| A Coruña | 1 | 1 |
| 1 | 1 | |
| Madrid | 2 | 2 |
| Bilbao | 5 | 5 |
| Barcelona | 4 | 4 |
| Jaén | 7 | 7 |
| 7 | 7 | |
| Bilbao | 5 | 5 |
| Barcelona | 4 | 4 |
| A Coruña | 1 | 1 |
| 1 | 1 | |
| Madrid | 2 | 2 |
| 2 | 2 | |
| Bilbao | 5 | 5 |
| Barcelona | 4 | |
| 4 | ||
| Jaén | 7 |
Si observamos la variable CIUDAD podemos ver que la serie de sus valores se corresponde con los indicados por nosotros. Vamos a ver como calcular la distribución de frecuencias, apoyándonos en los paquetes de referencia tidyverse (Wickham et al. 2019), expss (Demin 2023) y rstatix (Kassambara 2023). Para los gráficos usaremos el paquete ggplot (Wickham 2016) incluido en el indicado tidyverse.
expss::fre(unvl(df$CIUDAD))| unvl(df$CIUDAD) | Count | Valid percent | Percent | Responses, % | Cumulative responses, % |
|---|---|---|---|---|---|
| 1 | 13 | 26 | 26 | 26 | 26 |
| 2 | 8 | 16 | 16 | 16 | 42 |
| 3 | 1 | 2 | 2 | 2 | 44 |
| 4 | 11 | 22 | 22 | 22 | 66 |
| 5 | 8 | 16 | 16 | 16 | 82 |
| 6 | 1 | 2 | 2 | 2 | 84 |
| 7 | 7 | 14 | 14 | 14 | 98 |
| 8 | 1 | 2 | 2 | 2 | 100 |
| #Total | 50 | 100 | 100 | 100 | |
| <NA> | 0 | 0 |
Expliquemos en primer lugar la salida base, y posteriormente ampliamos su uso. Podemos observar como la primera columna muestra los diferentes valores que conforman la distribución de frecuencias, que observamos de 1 a 8 de forma ordenada y creciente. La segunda columna informa del número de veces (repeticiones) de cada uno de esos valores, es decir, la frecuencia. La tercera columna informa sobre el porcentaje de casos que representa cada valor sobre el total de los casos y la quinta columna el mismo porcentaje, pero acumulado, alcanzando dado el carácter no múltiple de esta variable (respuesta simple por cada individuo) el 100 % de los casos. Al final de la tabla, aparace el recuento de los posibles valores especiales de esta variable. Nótese que hemos usado en la nomenclatura de R una función unvl() que nos ha permitido eludir los textos de las etiquetas de cada variable, que eran estos:
A Coruña Madrid Valencia Barcelona Bilbao Lleida Jaén Santander
1 2 3 4 5 6 7 8
Si usamos la misma sentencia pero sin esa función…
fre(df$CIUDAD)| df$CIUDAD | Count | Valid percent | Percent | Responses, % | Cumulative responses, % |
|---|---|---|---|---|---|
| A Coruña | 13 | 26 | 26 | 26 | 26 |
| Madrid | 8 | 16 | 16 | 16 | 42 |
| Valencia | 1 | 2 | 2 | 2 | 44 |
| Barcelona | 11 | 22 | 22 | 22 | 66 |
| Bilbao | 8 | 16 | 16 | 16 | 82 |
| Lleida | 1 | 2 | 2 | 2 | 84 |
| Jaén | 7 | 14 | 14 | 14 | 98 |
| Santander | 1 | 2 | 2 | 2 | 100 |
| #Total | 50 | 100 | 100 | 100 | |
| <NA> | 0 | 0 |
Del mismo modo, hemos eludido comentar la cuarta columna, que realmente será distinta de la tercera en el caso de las variables múltiples, ya que en este caso, la frecuencia se calcularía con la base de las n respuestas (se supone que más que individuos) que pudieran haber en la distribución. este será el caso cuando cada individuo hubiera podido indicar más de una ciudad en su respuesta.
En este caso se produce una coincidencia entre el Valid percenty el Percent porque no hay valores especiales. Caso de que los hubiera, lo más habitual sería siempre consultar el Valid percent.
Vamos ahora con una revisión de otros estadísticos básicos, que por no algar y en virtud de su sencillez, los agruparemos en Otros estadísticos básicos
Cargaremos otro archivo que contiene una variable numérica sobre la que poder hacer cálculos.
df <- read_spss('https://drive.google.com/uc?export=download&id=1e4LdCD_pXppt7PQqFVrwZaZ5zwFpZ064')
head(df,n=10) PUNTO UNIDADES
1 201 17
2 202 77
3 203 62
4 204 53
5 205 85
6 206 44
7 207 26
8 208 30
9 209 85
10 210 34
No podemos extender mucho la explicación de este cálculo ya que este descriptivo es la agregación de los casos de la distribución. La expresión suma queda definida por la fórmula:
\[ \sum_{i = 1}^{n}{x_i} \]
Para calcular este estadístico en R podemos optar por hacerlo, al igual que con las frecuencias de dos formas, utilizando la opción de descriptivos (funciones del paquete base) o utilizando una fórmula específica general del paquete rstatix.
Aunque debería encuadrarse dentro de los tratamientos de variabilidad o dispersión, denominamos máximo al valor más elevado en tamaño de la serie analizada.
\[ max({x_i}) \]
Para calcular este estadístico en R podemos optar por hacerlo, al igual que con las frecuencias de dos formas, utilizando la opción de descriptivos o utilizando una fórmula específica general.
Igual que el anterior, aunque debería encuadrarse dentro de los tratamientos de variabilidad o dispersión, denominamos mínimo al valor más reducido en tamaño de la serie analizada.
\[ min({x_i}) \]
Para calcular este estadístico en R podemos optar por hacerlo, al igual que con las frecuencias de dos formas, utilizando la opción de descriptivos o utilizando una fórmula específica general.
sum <- paste('Suma de casos: ', sum(df$UNIDADES,na.rm = TRUE))
max <- paste('Máximo: ',max(df$UNIDADES,na.rm = TRUE))
min <- paste('Mínimo: ', min(df$UNIDADES,na.rm = TRUE))En esta sintaxis hemos usado una funcionalidad básica de R, guardar información en objetos y luego publicar el resultado de forma integrada con el texto. El comando ‘r nombre_objeto’ publica el objeto en el texto, aunque no se ve (ya ha sido sustituido) aquí hemos escrito r sum, r max y r min en la lista de viñetas. Cada uno de ellos antepone y acaba con el símbolo “`”.
En estadística, el término tendencia central se refiere a la forma en que los datos cuantitativos tienden a agruparse alrededor de algún valor. Una medida de tendencia central es cualquier forma de valor resumido de especificar este “valor central”.
Uno de las formas más simples de expresar ese valor resumido es una media de un conjunto de valores. Esta media puede expresarse de diferentes formas ya que como sabemos la media puede ser aritmética, geométrica, armónica, ponderada o también puede ser expresada como la mediana. El término se aplica a los datos multidimensionales y nos proporciona la noción de un “lugar central” o “promedio” calculado con los datos. Las medidas de tendencia central pueden ser aplicadas tanto a poblaciones como a muestras.
Desarrollamos las más importantes en el ámbito de la investigación de mercados.
Todos estamos familiarizados con la media aritmética como valor representativo de un conjunto de puntuaciones o también como la suma de todas las puntuaciones dividida por el número de puntuaciones; con frecuencia describimos un grupo de manera resumida diciendo cuál es su media; si estamos hablando de una clase no es lo mismo decir esta clase tiene una media de 7, que decir en esta clase la media es 5… La fórmula de la media no necesita demostración porque expresa el mismo concepto de media: cuánto correspondería a cada sujeto (u objeto) si todos tuvieran el mismo valor: sumamos todos los valores y dividimos esta suma por el número de sujetos. El símbolo habitual de la media es el mismo utilizado en las puntuaciones directas (generalmente una X mayúscula o x minúscula) con una raya horizontal encima (pero también se utilizan otros símbolos como la letra M).
\[ \overline{x}=\frac{\sum_{i=1}^{n}(x_{i})}{n} \]
de la media podemos enunciar dos propiedades que también nos podrían servir para definirla.
Esta propiedad de la media nos permite definirla como el valor central que hace que la suma de los cuadrados de las desviaciones con respecto a este valor sea el mínimo posible. El método de localizar la media buscando el valor mínimo de la suma de cuadrados (de las diferencias con respecto a la media elevadas al cuadrado) recibe el nombre de método de los cuadrados mínimos; no tiene especial importancia ahora, pero sí lo tiene en otras aplicaciones de la estadística (como en la recta de regresión) y es útil estar ya familiarizados con este término.
Para calcular este estadístico en R podemos optar por hacerlo, al igual que con las frecuencias de dos formas, utilizando la opción de descriptivos o utilizando una fórmula específica general.
La mediana es el valor que divide las frecuencias en dos mitades iguales: por encima de la mediana y por debajo de la mediana encontramos el mismo número de sujetos. La mediana es otro valor de tendencia central muy útil. La mediana podemos buscarla, al menos de manera aproximada, por simple inspección de los datos en una distribución de frecuencias; el cálculo preciso lo veremos en el contexto de los percentiles (la mediana corresponde al percentil 50: el valor que deja por debajo a la mitad de la muestra).
La mediana puede ser también expresada en función de otras expresiones utilizadas en estadística: Una mediana es la expresión del segundo cuartil, el quinto decil o el quincuagésimo percentil.
El término que generaliza estas expresiones es el de cuantiles que constituyen una generalización del concepto de mediana. Así como la mediana divide a la serie estudiada en dos partes con el mismo número de elementos cada una, si la división se hace en cuatro partes, o en diez partes, o en cien partes, llegamos al concepto de cuantiles: respectivamente cuartiles, deciles y percentiles.
Son tres valores con las siguientes características:
Así, el primer cuartil se hallará aplicando la siguiente fórmula:
\[ Q_1=l+\frac{I}{f}*(\frac{N}{4}*f_{i}) \]
y el tercer cuartil:
\[ Q_1=l+\frac{I}{f}*(\frac{3N}{4}*f_{i}) \]
donde …
La mediana por tanto, sería:
\[ Q_1=l+\frac{I}{f}*(\frac{2N}{4}*f_{i}) \]
Es la segunda clase de cuantiles. Si se divide toda la serie en diez partes iguales tendremos los deciles.
D1, el decil 1, deja el 10% de los valores de la serie por debajo de él. Análogamente ocurre con los deciles D2, D3,…….D9. El decil 8, por ejemplo, deja el 80% de la masa de datos investigada por debajo de él. Las fórmulas para calcularlos son también análogas a las de la mediana.
Por ejemplo, los deciles 1 y 9…
\[ D_1=l+\frac{I}{f}*(\frac{N}{10}*f_{i}) \]
\[ D_9=l+\frac{I}{f}*(\frac{9N}{10}*f_{i}) \]
Hay 99 percentiles que se denotan: P1, P2, P3,…….,P98, P99. Así P90, por ejemplo, deja por debajo de él el 90% de los elementos. La fórmula para realizar el cálculo del percentil 45, por ejemplo sería:
\[ P_{45}=l+\frac{I}{f}*(\frac{45N}{100}*f_{i}) \]
Agrupamos todos los cálculos …
Media <- paste('Media de casos: ', mean(df$UNIDADES,na.rm = TRUE))
Mediana <- paste('Mediana (Q<sub>2</sub>) -forma directa-: ', median(df$UNIDADES,na.rm = TRUE))
Medianaq <- paste('Mediana (Q<sub>2</sub>): ', quantile(df$UNIDADES,na.rm = TRUE, probs=0.5))
Q1 <- paste('Cuartil (Q<sub>1</sub>): ', quantile(df$UNIDADES, na.rm=T, probs=0.25))
Q3 <- paste('Cuartil (Q<sub>3</sub>): ', quantile(df$UNIDADES, na.rm=T, probs=0.75))
D1 <- paste('Decil (Q<sub>1</sub>): ', quantile(df$UNIDADES, na.rm=T, probs=0.10))
D9 <- paste('Decil (Q<sub>9</sub>): ', quantile(df$UNIDADES, na.rm=T, probs=0.90))
P45 <- paste('Percentil (P<sub>45</sub>): ', quantile(df$UNIDADES, na.rm=T, probs=0.45))Listamos los resultados:
Los diagramas de caja también llamados gráficos Box-Whisker (de caja y bigotes), nos permiten identificar la distribución y la dispersión de los datos de una variable de escala. Con este tipo de gráfico se representa la mediana, los cuartiles (1 y 3), los valores atípicos y los valores extremos. La estructura de este tipo de gráfico esta basada en una caja, donde el límite superior corresponde al valor del tercer cuartil (75% de los datos) y el límite inferior al primer cuartil (25%); a su vez dentro de la caja se incluye una línea representando el valor de la mediana. Además se incluye dos barras verticales (bigotes), los cuales determinan la distancia o rango del 95% de los casos; adicionalmente, el procedimiento anexa algunos símbolos representativos de los valores atípicos y extremos. La utilidad de este tipo de gráficos radica en la posibilidad de resumir el comportamiento y las principales medidas de una o varias variables de escala, mediante un solo diagrama.
En definitiva, este gráfico es muy útil porque proporciona una visión general de la simetría de la distribución de los datos ya que si la mediana no está en el centro del rectángulo, la distribución no es simétrica, y su consecuencia es la rápida detección de valores atípico, que aunque no existentes en esta distribución, a lo largo del documento aparecerán. Usaremos el sistema más típico de gráficos en R que es el paquete ggplot (Wickham 2016).
ggplot(df, aes(y = UNIDADES)) +
geom_boxplot() +
theme(
axis.text.x = element_blank(),
axis.ticks = element_blank()
)
Las medidas de dispersión, también llamadas medidas de variabilidad, muestran la variabilidad de una distribución, indicando por medio de un número, si las diferentes puntuaciones de una variable están muy alejadas de la media. Cuanto mayor sea ese valor, mayor será la variabilidad, cuanto menor sea, más homogénea será a la media. Así se sabe si todos los casos son parecidos o varían mucho entre ellos.
Para calcular la variabilidad que una distribución tiene respecto de su media, se calcula la media de las desviaciones de las puntuaciones respecto a la media aritmética. Pero la suma de las desviaciones es siempre cero, así que se adoptan dos clases de estrategias para salvar este problema. Una es tomando las desviaciones en valor absoluto (desviación media) y otra es tomando las desviaciones al cuadrado (varianza).
La varianza, también denominada variancia, es una medida estadística que mide la dispersión de los valores respecto a un valor central (media), es decir, la media de las diferencias cuadráticas de las puntuaciones respecto a su media aritmética. Suele ser representada con la letra griega σ o una V en mayúscula.
$$ S{2}{x} =
$$
La varianza a veces no se interpreta claramente, ya que se mide en unidades cuadráticas, debido a ello, definimos otra medida de dispersión, que es la desviación típica o standard, que se halla como la raíz cuadrada positiva de la varianza.
La desviación típica informa sobre la dispersión de los datos respecto al valor de la media; cuanto mayor sea su valor, más dispersos estarán los datos. Esta medida viene representada en la mayoría de los casos por S o por STD, dado que es su inicial de su denominación en inglés. Existen dos alternativas de cálculo la denominada desviación típica muestral que divide por n-1 y la desviación típica poblacional que divide por N siendo n el tamaño de la muestra y N el tamaño de la población. Resulta obvio al ver las fórmulas que en muestras muy grandes la diferencia es imperceptible de aplicar N como tamaño muestral.
\[ S_{x} =\sqrt{ \sum_{i=1}^{k}\frac{(x-\overline{x})^{2}}{n-1}} \] \[ \sigma_{x} =\sqrt{ \sum_{i=1}^{k}\frac{(x-\overline{x})^{2}}{n-1}} \]
Una característica fundamental de la desviación típica cuando se trabaja con muestra y con variables normales, es que:
*****dibujar normal y desviaciones típicas con porcentajes de casos.****
Para calcular este estadístico en Barbwin podemos optar por hacerlo, al igual que con las frecuencias de dos formas, utilizando la opción de descriptivos o utilizando una fórmula específica general.
El coeficiente de variación es un indicador adimensional de la dispersión relativa que se pueda dar en una distribución de frecuencias. Al ser un cociente adimensionado, puede servir como medida de comparación de dos distribuciones con media y desviaciones diferentes. Aquellas distribuciones con diferente media y desviación para ser comparadas requerirán de la aplicación del proceso de estandarización para análisis conjunto, sin embargo este índice que varía entre 0 y 100 podrá permitir la comparación de las dispersiones de los datos en función de la media y la desviación típica.
La expresión es:
$$ VCf =
=
$$ ### Rango El rango o recorrido estadístico es la diferencia entre el valor mínimo y el valor máximo en un grupo de números aleatorios. Se le suele simbolizar con R. Para calcular el rango, debemos ordenar los números según su tamaño y posteriormente restamos el valor mínimo del valor máximo de la serie de valores. El resultado es el rango que estará medido en unidades de la serie.
Rango = Máximo - Mínimo
Para calcular este estadístico en Barbwin podemos optar por hacerlo, al igual que con las frecuencias de dos formas, utilizando la opción de descriptivos o utilizando una fórmula específica general.
Otra medición de rango es el denominado rango intercuartílico que es la diferencia entre el tercer y el primer cuartil de una distribución. Es una medida de la variabilidad estadística de una distribución. A diferencia del rango, se trata de un estadístico robusto, aproximación alternativa a los métodos estadísticos clásicos cuyo objeto es producir estimadores que no sean afectados indebidamente por valores atípicos u otras pequeñas discrepancias respecto de las asunciones del modelo. Desafortunadamente, cuando hay valores atípicos en los datos, los resultados producidos por los métodos clásicos son a menudo de baja calidad. El rango está relacionado con los diagramas de caja, representaciones gráficas sencillas de una distribución de probabilidad.
El error estándar o típico de una medición es la desviación estándar de la muestra de la distribución asociada con el método de estimación. En el caso del error de la media muestral que es un estimador de la media poblacional, si sabemos que la media muestral es una media obtenida en una de las infinitas muestras a tomar en una población, podemos inferir que nuestro cálculo contiene un error. El error estándar o típico de la media es la desviación estándar de esa muestra como cociente con el tamaño de la muestra de la que se ha obtenido la medición. Esta sería la expresión del error de la media:
\[e=\frac{SD}{\sqrt{N-1}}\]
El término de error estándar se deriva del hecho de que, siempre que el estimador es insesgado, la desviación estándar del error (la diferencia entre la estimación y el valor real) es la misma que la desviación estándar de las estimaciones de sí mismos, lo que es cierto, ya que la desviación estándar de la diferencia entre la variable aleatoria y su valor esperado es igual a la desviación estándar de una variable aleatoria en sí misma.
Según el teorema del límite central, si de cualquier población se extraen muestras aleatorias del mismo tamaño N, al aumentar el número de muestras, sus medias se distribuyen normalmente, con media μ y una desviación típica, o error típico \[e=\frac{\sigma}{\sqrt{N}}\]
Esta distribución muestral de las medias es independiente de la distribución de la población; aunque la distribución en la población no sea normal, las medias de las muestras aleatorias extraídas de esa población sí tienden a tener una distribución normal.
Observando la fórmula del error típico de la media podemos ver que:
1º Es claro que el error típico de la media será menor que la desviación típica de cualquier muestra: el cociente siempre será menor que el numerador. Esto quiere decir que las medias de las muestras son más estables y tienden a oscilar menos que las puntuaciones individuales; dicho de otra manera, las medias de muestras de la misma población se parecen entre sí más que los sujetos (u objetos) de una muestra entre sí.
2º Observando las fórmulas vemos también que el error típico de la media será más pequeño en la medida en que N sea grande: si aumentamos el denominador, disminuirá el cociente. Es natural que al aumentar el número de sujetos (N) el error sea menor: la media de la muestra se aproximará más a la media de la población. Si N es muy grande, el error tiende a cero; y si N no comprende a una muestra sino a toda la población, el error sería cero: en este caso la media de la población coincide con la media de la muestra y no hay error muestral (o variación esperable de muestra a muestra).
3º Por otra parte si la desviación típica de la muestra es grande, el error típico estimado de la media será también mayor: si aumentamos el numerador, el cociente será mayor.
También esto es lógico: una desviación típica grande en una muestra quiere decir que las diferencias entre los sujetos son mayores, y consecuentemente las medias de las diferentes muestras también diferirán más entre sí.
Vamos a exponer dos usos del error típico de la media. Aquí el más importante es el primero, establecer los límites probables (intervalos de confianza) entre los que se encuentra la media de la población, un planteamiento típico y frecuente en estadística inferencial. Veremos también lo mismo aplicado a una proporción, que es la media cuando se trata de datos dicotómicos (1 ó 0).
En segundo lugar el error típico de la media nos permite comprobar si una muestra con una determinada media puede considerarse como perteneciente a una población cuya media conocemos, es también de interés y es simplemente una aplicación del anterior. Igualmente podemos aplicarlo si la media es una proporción (una proporción es la media cuando los datos son unos y ceros). Es conveniente exponerlo aquí brevemente, pero lo volveremos a encontrar al tratar del contraste de medias, pues allí veremos un procedimiento más sencillo.
No sobra por último repetir una observación ya hecha: estamos tratando del error típico de la media (o desviación típica de una hipotética distribución de medias), pero de manera análoga podríamos tratar de otros errores típicos y con las mismas aplicaciones: de los coeficientes de correlación, de las proporciones, y de cualquier otro estadístico.
Como resultado del uso del error típico o estándar de la media, la media aritmética puede ser inferida en un intervalo de confianza que asegura al analista que la media poblacional con un nivel de confianza definido, se encontrará realmente en los límites marcados por éste. Habitualmente se trabaja bajo dos supuestos: muestras grandes (n > 30) o muestras pequeñas (n ≤ 30). Ante estos supuestos dos son las formulaciones propuestas:
Muestra mayor de 30, se utiliza el valor de Z (normal) \[ [L1,L2] = \overline{X}\pm z_{\sigma} * \frac{\sigma}{\sqrt{N}} \]
Muestra menor de 30, se utiliza el valor de t-Student \[ [L1,L2] = \overline{X}\pm t_{\sigma} * \frac{\sigma}{\sqrt{N}} \]
Para calcular este estadístico en R podemos optar por hacerlo, al igual que con las frecuencias de dos formas, utilizando la opción de descriptivos o utilizando.
Las medidas de caracterización de la distribución ayudan al analista a verificar el ajuste de la distribución de la serie de datos a analizar con mediciones nde asimetría y apuntamiento relacionadas con la curva normal. La asimetría resulta útil en muchos campos. Muchos modelos simplistas asumen una distribución normal, esto es, simétrica en torno a la media.
La distribución normal tiene una asimetría cero. Pero en realidad, los valores no son nunca perfectamente simétricos y la asimetría de la distribución proporciona una idea sobre si las desviaciones de la media son positivas o negativas. Una asimetría positiva implica que hay más valores distintos a la derecha de la media.
Las medidas de asimetría, sobre todo el coeficiente de asimetría de Fisher, junto con las medidas de apuntamiento o curtosis se utilizan para contrastar si se puede aceptar que una distribución estadística sigue la distribución normal. Esto es necesario para realizar numerosos contrastes estadísticos en la teoría de inferencia estadística.
Las medidas de asimetría son medidas características que permiten establecer el grado de simetría (o asimetría) que presenta una distribución de probabilidad de una variable aleatoria sin tener que hacer su representación gráfica (que no obstante siempre es necesaria). Si establecemos como eje de simetría una recta paralela al eje de ordenadas que pasa por la media de la distribución, diremos que una distribución será simétrica si existen el mismo número de valores a la derecha que a la izquierda de la media, por tanto, el mismo número de desviaciones con signo positivo que con signo negativo. Ante esto podemos afirmar que :
\[ \gamma _{l}=\frac{\mu _{3}}{\sigma _ {3}} \]
donde μ3 es el tercer momento en torno a la media y σ es la desviación estándar.
Tras esta explicación, la fórmula con la que se calcula (entre otras) la (a)simetría es el coeficiente de asimetría de Bowley, y está basado en la posición de los cuartiles y la mediana, y utiliza la siguiente expresión:
\[ A_{B} = \frac{Q_{3/4}+Q_{1/4}-2Me}{Q_{3/4}-Q_{1/4}} \]
En una distribución simétrica el tercer cuartil estará a la misma distancia de la mediana que el primer cuartil. Por tanto AB = 0. Si la distribución es positiva o a la derecha, AB = 0.
Para calcular este estadístico en R … .
En teoría de la probabilidad y estadística, la curtosis es una medida de la forma o apuntamiento de las distribuciones. Así las medidas de curtosis (también llamadas de apuntamiento o de concentración central) tratan de estudiar la mayor o menor concentración de frecuencias alrededor de la media y en la zona central de la distribución. El coeficiente de apuntamiento de uso más extendido es el basado en el cuarto momento con respecto a la media y define como:
\[ \beta _{2}=\frac{\mu _{4}}{\sigma _ {4}} \]
dónde μ4 es el 4º momento centrado o con respecto a la media y σ es la desviación estándar, aunque en ocasiones se emplea está otra definición del coeficiente de curtosis (utilizada por Barbwin), donde se ha sustraído 3 al final para generar un coeficiente centrado en 0:
\[ \frac{\frac{\sum_{j=1}^{n}(X-\overline{X})^{4}}{N}}{\frac{\sum_{j=1}^{n}(X_j-\overline{X})^{2}}{N}} - 3 \]
Tomando la distribución normal como referencia, una distribución puede ser:
En la distribución normal se verifica que μ4 = 3σ4, donde μ4 es el momento de orden 4 respecto a la media y σ la desviación típica. Así tendremos que:
Para calcular este estadístico en R podemos optar por hacerlo … .
De forma alternativa (y verás que más habitual) usaremos la siguiente función para obtener la mayor parte de los descriptivos necesarios. Hay muchas formas, desde el summary() hasta el fivenum() que se usan según la necesidad. Nosotros, como trabajamos con el paquete rstatix proponemos la siguiente solución 1:
get_summary_stats(df, UNIDADES) # get_summary_stats() obtiene los resultados# A tibble: 1 × 13
variable n min max median q1 q3 iqr mad mean sd se
<fct> <dbl> <dbl> <dbl> <dbl> <labell> <lab> <dbl> <dbl> <dbl> <dbl> <dbl>
1 UNIDADES 100 17 87 47.5 31 69.25 38.2 30.4 50.5 22.4 2.24
# ℹ 1 more variable: ci <dbl>
Un dataframe (terminología de R para los bancos de datos, ficheros, bases de datos) que contiene las estadísticas descriptivas básicas, como:
Una forma de aplicación de los conocimientos que recientemente hemos adquirido con respecto al análisis de datos sería el de la búsqueda y análisis de los llamados valores atípicos. Un valor atípico (Hawkins 1980; Aldás Manzano and Uriel Jiménez 2017; Soetewey 2020) o outlier es una observación de una variable de la cual hemos recogido una medida, cuyo grado excede por su límite superior o inferior significativamente de los valores típicos de la distribución. Una observación siempre debe ser comparada con otras observaciones realizadas sobre la misma variable, antes de catalogarlo como outlier y siempre teniendo en cuanta las condiciones en las que se ha realizado la medida de fiabilidad y veracidad.
Un valor atípico puede deberse a la dispersión o variaciones de la variable que estamos midiendo u observando. Por ejemplo, suele darse el caso de que existan valores atípicos al recopilar datos sobre cifras de ventas en las PYME. Pueden existir PYMEs cuyas cifras de ventas superen en mucho incluso a empresas más pequeñas en salarios, ya que algunas personas ganan mucho más dinero que el resto. Los valores atípicos también pueden surgir debido a un error experimental, de medición o de codificación. Por ejemplo, un ser humano que pesa 786 kg claramente un error al registrar el dato del peso del individuo. Lo más probable es que su peso sea de 78,6 kg o 7,86 kg), dependiendo de si se han medido los pesos de adultos o bebés.
Presentamos en este post diferentes formas de cálculo de los outliers (las más habituales y sencillas) que todo investigador debería aplicar en la exploración descriptiva de sus datos para decidir los mejor, si editar los mismos (errores) o eliminar su presencia en el banco de datos a analizar para no distorsionar los resultados del análisis.
La decisión de editar y mantener o de eliminar los atípicos, depende de los siguientes factores (Soetewey 2020):
Por último, en este post sólo se estudia el caso de outliers univariantes. Dejamos para posteriores post el análisis de situaciones en las que pueda serr necesario evaluar los outliers de tipo multivariante.
Estas dos simples medidas ya nos pueden proporcionar una aproximación muy simple a como se distribuye la variable, y nuestro conocimiento del rango de la distribución en la población ya nos puede aportar información objetiva. Con R son muchas las formas de poder calcularlo, pero siguiendo nuestra costumbre de minimizar el número de paquetes a usar, podemos hacerlo con instrucciones básicas de R y usando el archivo mpg del paquete ggplot2 y particularmente el campo que refiere al gasto de combustible (hwy).
mpg# A tibble: 234 × 11
manufacturer model displ year cyl trans drv cty hwy fl class
<chr> <chr> <dbl> <int> <int> <chr> <chr> <int> <int> <chr> <chr>
1 audi a4 1.8 1999 4 auto… f 18 29 p comp…
2 audi a4 1.8 1999 4 manu… f 21 29 p comp…
3 audi a4 2 2008 4 manu… f 20 31 p comp…
4 audi a4 2 2008 4 auto… f 21 30 p comp…
5 audi a4 2.8 1999 6 auto… f 16 26 p comp…
6 audi a4 2.8 1999 6 manu… f 18 26 p comp…
7 audi a4 3.1 2008 6 auto… f 18 27 p comp…
8 audi a4 quattro 1.8 1999 4 manu… 4 18 26 p comp…
9 audi a4 quattro 1.8 1999 4 auto… 4 16 25 p comp…
10 audi a4 quattro 2 2008 4 manu… 4 20 28 p comp…
# ℹ 224 more rows
Calculamos el mínimo y el máximo entre otras mediciones con la orden summary básica en R, particularizada para el campo hwy.
summary(mpg$hwy) Min. 1st Qu. Median Mean 3rd Qu. Max.
12.00 18.00 24.00 23.44 27.00 44.00
Alternativamente, también se pueden calcular con las funciones min () y max (), funciones también básicas de R que no necesitan de carga de ningún paquete en especial:
min(mpg$hwy)[1] 12
max(mpg$hwy)[1] 44
Estos datos por sí solos, tampoco nos dicen mucho, sin verlo en perspectiva. por tanto, seguimos adelante nuestro proceso, sabiendo cuáles son los límites de nuestra distribución, calculando ahora el histograma de frecuencias de nuestro campo.
El histograma es otra forma de apreciar los valores atipicos a partir de nuestro conocimiento de los datos. Vamos a usar en este caso el paquete highcharter del cual como sabéis somos fans absolutos para hacer gráficos interactivos y animados.
hchart(mpg$hwy, name = "horse power")Parecen existir dos observaciones que presentan diferencias respecto al resto, pero tampoco podemos afirmar gran cosa acerca de las mismas. Podemos ir más allá y presentar el gráfico de caja y aquí sí existen las primeras reglas para ver la existencia de atípicos.
El diagrama de caja o boxplot por definición sí es una buena forma de aproximarse a los datos sin contexto, pues existen unas reglas que determinan como se dibuja el mismo. highcharteren su nueva versión nos facilita mucho la labor de obtención de los datos con la función data_to_boxplot que ya prepara los datos para este tipo de gráfico.
df <- data_to_boxplot(mpg, hwy, add_outliers=TRUE)
highchart() %>%
hc_add_series_list(df)Un diagrama de caja ayuda a visualizar una variable cuantitativa al mostrar cinco resúmenes de ubicaciones comunes (mínimo, mediana, primer y tercer cuartiles y máximo) y cualquier observación que se haya clasificado como un valor atípico sospechoso utilizando el criterio de rango intercuartílico (IQR).
I=[q0.25−1.5⋅IQR;q0.75+1.5⋅IQR]
Las observaciones consideradas como posibles valores atípicos por el criterio IQR se muestran como puntos en la gráfica de caja. Según este criterio, hay 2 posibles valores atípicos (consulte los 2 puntos sobre la línea vertical, en la parte superior de la gráfica de caja).
Recuerda que no porque el criterio IQR considere una observación como un valor atípico potencial, se debe eliminarla. Eliminar o mantener un valor atípico depende de:
Como se puede ver en el gráfico, hay dos medidas que son consideradas outliers. Veamos cuáles son esas medidas en el banco de datos o dataframe.
boxplot.stats(mpg$hwy)$out[1] 44 44 41
Estas son las medidas (3 casos con dos medidas), pero ¿a qué observaciones refieren? Utilizando la función which, podemos saber qué observaciones son éstas.
which(mpg$hwy %in% boxplot.stats(mpg$hwy)$out)[1] 213 222 223
Estos son los casos que podríamos decidir eliminar o mantener.
Este método de detección de valores atípicos se basa en los percentiles. Con el método de percentiles, todas las observaciones que se encuentran fuera del intervalo formado por los percentiles 0.025 y 0.975 se considerarán como valores atípicos potenciales. Otros percentiles como los percentiles 0.01 y 0.99, o los percentiles 0.05 y 0.95 también se pueden considerar para construir el intervalo.
Los valores de los percentiles superior e inferior (y, por tanto, los límites superior e inferior del intervalo) se pueden calcular con la función cuantile ():
quantile(mpg$hwy, 0.025) #valor inferior2.5%
14
quantile(mpg$hwy, 0.975) #valor superior 97.5%
35.175
De acuerdo con este método, todas las observaciones por debajo de 14 y por encima de 35.175 se considerarán valores atípìcos potenciales. Los números de fila de las observaciones fuera del intervalo se pueden extraer con la función which. En este caso, guardamos el resultado en el objeto outlier_ind para facilitar la legibilidad de la expresión en posteriores usos.
outlier_ind <- which(mpg$hwy < (quantile(mpg$hwy, 0.025)) | mpg$hwy > quantile(mpg$hwy, 0.975))
outlier_ind #listamos los valores de intervalo [1] 55 60 66 70 106 107 127 197 213 222 223
mpg[outlier_ind, "hwy"] #listamos los identificadores de casos# A tibble: 11 × 1
hwy
<int>
1 12
2 12
3 12
4 12
5 36
6 36
7 12
8 37
9 44
10 44
11 41
Hay 11 valores atípicos potenciales según el método de percentiles. Sin embargo, si establecemos los límites en 0.01 y 0.99, el resultado nos da los mismos valores atípicos potenciales que con el criterio IQR.
outlier_ind <- which(mpg$hwy < (quantile(mpg$hwy, 0.01)) | mpg$hwy > quantile(mpg$hwy, 0.99))
outlier_ind[1] 213 222 223
mpg[outlier_ind, "hwy"]# A tibble: 3 × 1
hwy
<int>
1 44
2 44
3 41
Otro método, conocido como filtro de Hampel, consiste en considerar como valores atípicos los valores fuera del intervalo formado por [mediana−3⋅MAD ; mediana+3⋅MAD], donde MAD es la mediana de las desviaciones absolutas de la mediana de los datos. Para este método, primero establecemos los límites de intervalo gracias a las funciones median y mad:
(median(mpg$hwy) - 3 * mad(mpg$hwy)) # valor menor de intervalo[1] 1.761
(median(mpg$hwy) + 3 * mad(mpg$hwy)) # valor mayor de intervalo[1] 46.239
outlier_ind <- which(mpg$hwy < (median(mpg$hwy) - 3 * mad(mpg$hwy)) | mpg$hwy > (median(mpg$hwy) + 3 * mad(mpg$hwy)))
outlier_indinteger(0)
De acuerdo con este método, todas las observaciones por debajo de 1.761 y por encima de 46.239 se considerarán valores atípicos potenciales. Los números de fila de las observaciones fuera del intervalo se han extraído con la función which. Según el filtro Hampel, no existe un valor atípico potencial para esta variable.
En esta sección, presentamos 3 técnicas más formales para detectar valores atípicos (Aldás Manzano and Uriel Jiménez 2017):
Estas 3 pruebas estadísticas son parte de técnicas más formales de detección de valores atípicos, ya que todas implican el cálculo de una inferencia estadística que compara con valores críticos (que se basan en el tamaño de la muestra y el nivel de confianza deseado).
Tener en cuenta que las 3 pruebas son apropiadas solo cuando los datos (sin valores atípicos) tienen una distribución aproximadamente normal. Por lo tanto, el supuesto de normalidad debe verificarse antes de aplicar estas pruebas para valores atípicos (Kolmogorov-Smirnov o Shapiro-Wilk).
La prueba de Grubbs permite detectar si el valor más alto o más bajo en un conjunto de datos es un valor atípico. Se detecta un valor atípico a la vez (valor más alto o más bajo), por lo que las hipótesis nula y alternativa son H0: el valor más alto no es un valor atípico y H1: el valor más alto es un valor atípico, si queremos probar el valor más alto; H0: el valor más bajo no es un valor atípico, H1: el valor más bajo es un valor atípico, si queremos probar el valor más bajo.
Como para cualquier prueba estadística, si el valor p es menor que el umbral de significancia elegido (generalmente α = 0.05), entonces se rechaza la hipótesis nula y concluiremos que el valor más bajo / más alto es un valor atípico. Por el contrario, si el valor p es mayor o igual que el nivel de significancia, la hipótesis nula no se rechaza y concluiremos que, con base en los datos, no rechazamos la hipótesis de que el valor más bajo / más alto no es un valor atípico. Tenga en cuenta que la prueba de Grubbs no es apropiada para un tamaño de muestra de 6 o menos (n ≤ 6). Para realizar la prueba de Grubbs en R, usamos la función grubbs.test del paquete outliers.
test <- grubbs.test(mpg$hwy)
test
Grubbs test for one outlier
data: mpg$hwy
G = 3.45274, U = 0.94862, p-value = 0.05555
alternative hypothesis: highest value 44 is an outlier
El valor p es 0.056. En el nivel de significancia del 5%, no rechazamos la hipótesis de que el valor más alto 44 no es un valor atípico.
Nótese que por defecto, la prueba se realiza en el valor más alto (como se muestra en la salida R: hipótesis alternativa: el valor más alto 44 es un valor atípico). Si desea hacer la prueba para el valor más bajo, simplemente agregue el argumento opposite = TRUE en la función grubbs.test.
test <- grubbs.test(mpg$hwy, opposite = TRUE)
test
Grubbs test for one outlier
data: mpg$hwy
G = 1.92122, U = 0.98409, p-value = 1
alternative hypothesis: lowest value 12 is an outlier
El valor p es 1. Al nivel de significancia del 5%, no rechazamos la hipótesis de que el valor más bajo 12 no es un valor atípico.
Por tanto, para esta prueba no hay outliers en el banco de datos. Nótese la diferencia con las pruebas descriptivas antes presentadas.
Similar a la prueba de Grubbs, la prueba de Dixon se usa para probar si un valor alto o bajo es un valor atípico. Por lo tanto, si se sospecha más de un valor atípico, la prueba debe realizarse en estos valores atípicos sospechosos de forma individual. Para realizar la prueba de Dixon en R, usamos la función dixon.test del paquete outliers. A diferencia de la prueba de Grubbs, la prueba de Dixon es más útil para muestras de pequeño tamaño (normalmente n ≤ 25), por lo que restringimos nuestro conjunto de datos a las 20 primeras observaciones (creamos subdat), ya que la prueba de Dixon solo se puede realizar en un tamaño de muestra pequeño, produciendo error si la muestra es más grande. Al igual que antes, para probar el valor más alto, simplemente agregue el argumento opposite = TRUE a la función dixon.test.
subdat <- mpg[1:20, ]
test <- dixon.test(subdat$hwy)
test
Dixon test for outliers
data: subdat$hwy
Q = 0.57143, p-value = 0.006508
alternative hypothesis: lowest value 15 is an outlier
test <- dixon.test(subdat$hwy, opposite = TRUE)
test
Dixon test for outliers
data: subdat$hwy
Q = 0.25, p-value = 0.8582
alternative hypothesis: highest value 31 is an outlier
Los resultados muestran que el valor más bajo 15 es un valor atípico (valor p = 0.007) y que el valor más alto 31 no es un valor atípico (valor p = 0.858).
Recuperando la vista gráfica en este nuevo subconjunto de datos…
df <- data_to_boxplot(subdat, hwy, add_outliers=TRUE)
highchart() %>%
hc_add_series_list(df)Nótese la existencia en el gráfico de un valor 20 que nos cataloga como outlier el diagrama de caja. ¿Como podemos testar si este valor 20 es también realmente un outlier? Deberíamos eliminar el valor 15, para que el valor 20 fuera analizado en la prueba de Dixon.
# find and exclude lowest value
remove_ind <- which.min(subdat$hwy)
subsubdat <- subdat[-remove_ind, ]
# Dixon test on dataset without the minimum
test <- dixon.test(subsubdat$hwy)
test
Dixon test for outliers
data: subsubdat$hwy
Q = 0.44444, p-value = 0.1297
alternative hypothesis: lowest value 20 is an outlier
df <- data_to_boxplot(subsubdat, hwy, add_outliers=TRUE)
highchart() %>%
hc_add_series_list(df)Los resultados muestran que el segundo valor más bajo 20 no es un valor atípico (valor p = 0,13), aunque el digrama de caja (menos restrictivo el criterio IQR) así lo demuestre.
La prueba de Rosner para valores atípicos tiene las ventajas de que:
Para realizar la prueba de Rosner usamos la función rosnerTest del paquete EnvStats. Esta función requiere al menos 2 argumentos: los datos y el número de valores atípicos sospechosos k (con k = 3 como el número predeterminado de valores atípicos sospechosos). En nuestro caso usamos que el número de valores atípicos sospechosos sea igual a 3, como sugiere el número de outliers potenciales descritos en el diagrama de caja al comienzo del artículo.
Los resultados interesantes se proporcionan en la tabla final:
test <- rosnerTest(mpg$hwy,k = 3)
test$distribution
[1] "Normal"
$statistic
R.1 R.2 R.3
3.452739 3.552586 3.131909
$sample.size
[1] 234
$parameters
k
3
$alpha
[1] 0.05
$crit.value
lambda.1 lambda.2 lambda.3
3.652091 3.650836 3.649575
$n.outliers
[1] 0
$alternative
[1] "Up to 3 observations are not\n from the same Distribution."
$method
[1] "Rosner's Test for Outliers"
$data
[1] 29 29 31 30 26 26 27 26 25 28 27 25 25 25 25 24 25 23 20 15 20 17 17 26 23
[26] 26 25 24 19 14 15 17 27 30 26 29 26 24 24 22 22 24 24 17 22 21 23 23 19 18
[51] 17 17 19 19 12 17 15 17 17 12 17 16 18 15 16 12 17 17 16 12 15 16 17 15 17
[76] 17 18 17 19 17 19 19 17 17 17 16 16 17 15 17 26 25 26 24 21 22 23 22 20 33
[101] 32 32 29 32 34 36 36 29 26 27 30 31 26 26 28 26 29 28 27 24 24 24 22 19 20
[126] 17 12 19 18 14 15 18 18 15 17 16 18 17 19 19 17 29 27 31 32 27 26 26 25 25
[151] 17 17 20 18 26 26 27 28 25 25 24 27 25 26 23 26 26 26 26 25 27 25 27 20 20
[176] 19 17 20 17 29 27 31 31 26 26 28 27 29 31 31 26 26 27 30 33 35 37 35 15 18
[201] 20 20 22 17 19 18 20 29 26 29 29 24 44 29 26 29 29 29 29 23 24 44 41 29 26
[226] 28 29 29 29 28 29 26 26 26
$data.name
[1] "mpg$hwy"
$bad.obs
[1] 0
$all.stats
i Mean.i SD.i Value Obs.Num R.i+1 lambda.i+1 Outlier
1 0 23.44017 5.954643 44 213 3.452739 3.652091 FALSE
2 1 23.35193 5.812124 44 222 3.552586 3.650836 FALSE
3 2 23.26293 5.663340 41 223 3.131909 3.649575 FALSE
attr(,"class")
[1] "gofOutlier"
Vemos que solo hay un valor atípico (ver la columna de Outlier), y que es la observación 34 (ver Obs.Num) con un valor de 212 (ver columna Value de la tabla).
Por último, avanzar que veremos más adalente que se pueden calcular los oulierrs, no tan sólo de una variable, sino de un conjunto de variables, algo que se llama detección multivariante.
Siguiendo esta documentación y nomenclatura, las pruebas que veremos son:
Algunos de los estadísticos que se muestran en esta tabla son desarrollados en el texto. Otros ni siquiera se mencionarán.↩︎