Capítulo 2 Estadística descriptiva

La estadística descriptiva es una rama de la estadística cuyo objetivo es resumir, describir y presentar una serie de valores o un conjunto de datos. Estas estadísticas pueden ser realmente útiles al analizar largas series de datos en las que resulte difícil reconocer algún patrón. En éste capítulo utilizaremos una muestra de datos sobre salarios (en euros) de una población de 100 trabajadores:

2186, 1218, 1682, 1816, 1702, 1447, 2256, 1453, 2509, 1469, 2152, 2643, 806, 1361, 1433, 1818, 1358, 172, 280, 2160, 1347, 609, 1414, 2107, 2448, 1285, 1371, 618, 1730, 1180, 1728, 1852, 2018, 1196, 1752, 642, 1108, 1074, 293, 1518, 1603, 1320, 1879, 1137, 816, 1716, 1094, 2222, 1284, 1828, 1661, 1108, 2288, 1821, 1545, 1638, 1840, 1545, 4, 1642, 1316, 1593, 1791, 2200, 1136, 2151, 1668, 2019, 1960, 1860, 978, 1455, 1812, 1023, 1229, 1790, 1884, 1732, 1057, 950, 2256, 1629, 1544, 1440, 903, 1806, 1391, 1409, 1967, 1911, 2196, 1262, 1825, 2196, 945, 1070, 934, 770, 1540 y 1827

De un primer vistazo es difícil (por no decir imposible) que podamos comprender los datos y tener una visión clara de los salarios de este grupo de personas. Las estadísticas descriptivas permiten resumir y así tener una mejor visión general de los datos. Por supuesto, al resumir los datos a través de una o varias medidas, inevitablemente se perderá parte de la información. Sin embargo, en muchos casos es mejor perder algo de información pero, a cambio, obtener una visión general. Podriamos decir que se trata de ganar perspectiva.

La estadística descriptiva es a menudo el primer paso y una parte importante en cualquier análisis estadístico. Permite comprobar la calidad de los datos detectando posibles valores atípicos (outliers), es decir, datos que parecen ser significativamente distintos del resto. También se puede utilizar estadística descriptiva para detectar errores de recopilación o codificación, determinar si están bien presentados, entre otras posibles aplicaciones.

Podemos distinguir dos típos básicos de estadísticos para describir un conjunto de datos: de centralidad y de dispersión. Habitualmente, ambos tipos de medidas se utilizan juntos para resumir los datos de la forma más concisa.

2.1 Tendencia central

Las medidas de tendencia central permiten ver “dónde” se ubican los datos, alrededor de qué valores. En otras palabras, las medidas de ubicación permiten comprender cuál es la tendencia central o la “posición” de los datos en su conjunto. Entre las estadísticas más habituales de este tipo podemos distinguir:

  • Mínimo y máximo
  • Media
  • Mediana
  • Primer y tercer cuartil
  • Moda

2.1.1 Mínimo y máximo

Mínimo (\(min\)) y máximo (\(max\)) son simplemente los valores más bajo y más alto de la muestra. Dada una muestra de 6 de estos salarios:

2186, 1218, 1682, 1816, 1702 y 1447

El mínimo es 1217.7 euros y el máximo es 2185.5 euros. Estas dos estadísticas básicas dan una idea clara sobre el los extremos de la muestra y su cálculo con R es bastante sencillo:

min(salarios_sel)
## [1] 1217.7
max(salarios_sel)
## [1] 2185.5

2.1.2 Media

La media o promedio, es probablemente la estadística más habitual. Da una idea de cuál es el valor medio, es decir, el valor central de los datos o, en otras palabras, su centro de gravedad. La media se encuentra sumando todos los valores y dividiendo esta suma por el número de observaciones (\(n\)):

\[Media =\overline{x}=\frac{\text{suma de todos los valores}}{\text{número de valores}} = \frac{1}{n}\sum^{n}_{i=1}x_i\] Dada nuestra muestra de 6 salarios presentada anteriormente, la media es:

\[\overline{x} = \frac{2186 + 1218 + 1682 + 1816 + 1702 + 1447}{6}= 1675,033\]

En conclusión, el tamaño medio de la nuestra muestra es 1675.03 euros (redondeado a 2 decimales). El cálculo con R también resulta bastante sencillo:

mean(salarios_sel)
## [1] 1675.033

2.1.3 Mediana

La mediana es otra medida de centralidad. La interpretación de la mediana es que hay tantas observaciones por debajo como por encima de la mediana. En otras palabras, el 50% de las observaciones se encuentran por debajo de la mediana y el 50% de las observaciones están por encima de la mediana.

La forma más fácil de calcular la mediana es primero ordenar los datos de menor a mayor (es decir, en orden ascendente) y luego tomar el punto medio como la mediana. A partir de los valores ordenados, para un número impar de observaciones, el punto medio es fácil de encontrar: es el valor con tantas observaciones abajo como arriba. Aún a partir de los valores ordenados, para un número par de observaciones, el punto medio está exactamente entre los dos valores medios. Formalmente, después de ordenar, la mediana es:

  • si \(n\) (número de observaciones) es impar: \[mediana(x) = x_{\frac{n + 1}{2}}\]
  • si \(n\) es par: \[mediana(x) = \frac{1}{2}\big(x_{\frac{n}{2}} + x_{\frac{n}{2} + 1} \big)\]

donde el subíndice de \(x\) denota la numeración de los datos ordenados. El cálculo en R es de nuevo bastante sencillo:

median(salarios_sel)
## [1] 1691.85

2.1.4 Primer y tercer cuartil

El primer y tercer cuartil son similares a la mediana en el sentido de que también dividen las observaciones en dos partes, solo que estas partes no son iguales. Recordad que la mediana divide los datos en dos partes iguales (con el 50% de las observaciones por debajo y el 50% por encima de la mediana). El primer cuartil divide las observaciones de modo que haya un 25% de las observaciones debajo de este punto y un 75% por encima del primer cuartil. El tercer cuartil se calcula del mismo modo pero representa el valor con el 75% de las observaciones por debajo y el 25% de las observaciones por encima. Existen varios métodos para calcular el primer y tercer cuartil, pero por ejemplo se puede calcular siguiendo los siguientes pasos:

  1. Ordenar los datos en orden ascendente
  2. Calcular \(0.25\cdot n\) y \(0.75\cdot n\) (es decir, 0.25 y 0.75 veces el número de observaciones)
  3. Redondear estos dos números al siguiente número entero ceil

Los pasos son los mismos para un número par e impar de observaciones. A continuación se muestra un ejemplo para el cálculo de estos valores sobre los salarios de nueve trabajadores:

quantile(salarios_sel)
##       0%      25%      50%      75%     100% 
## 1217.700 1505.575 1691.850 1787.825 2185.500

Dado que obtenemos un vector de resultados, podemos seleccionar por posición para obtener el que necesitemos en cada caso.

2.1.5 Moda

La moda de una serie es el valor que aparece con mayor frecuencia. En otras palabras, es el valor que tiene el mayor número de ocurrencias. Dados los siguientes salarios:

1700, 1680, 1710, 1700, 1820, 1650, 1700, 1890 y 1670

La moda es 1700 porque es el valor más común con 3 apariciones. Todos los demás valores aparecen solo una vez. En conclusión, la mayoría de los trabajadores de esta muestra perciben exactamente 1700 euros al mes.

Hay que tener en cuenta que es posible que una serie no tenga moda (p. Ej., 4, 7, 2 y 10) o más de una moda (p. Ej., 4, 2, 2, 8, 11 y 11). Los datos con dos modas a menudo se denominan bimodales y los datos con más de dos modos a menudo se denominan multimodales, a diferencia de las series con una moda, que se denominan unimodales.

A diferencia de las anteriores estadísticas (mínimo, máximo, media, mediana, primer y tercer cuartil) que solo se pueden calcular para variables cuantitativas, la moda se puede calcular para variables cuantitativas y cualitativas. Atendiendo al tipo de empleo que desarrollan los 9 trabajadores presentados anteriormente:

ingeniero, ingeniero, ingeniero, ingeniero, asistente, asistente, asistente, ingeniero y camarero

La moda es “ingeniero”, por lo que la mayoría de los trabajadores de esta muestra son de uso ingenieros.

2.2 Dispersión

2.2.1 Rango

El rango es la diferencia entre el máximo y el mínimo:

\[rango = max - min\]

Dada nuestra muestra de salarios:

2186, 1218, 1682, 1816, 1702 y 1447

El rango es 2185.5 \(-\) 1217.7 \(=\) 967.8 euros. El rango es muy sencillo de calcular y en algunos casos puede dar una buena idea de lo que podemos esperar de un conjunto de datos. En R se puede utilizar la función range

range(salarios_sel)
## [1] 1217.7 2185.5

No obstante, esta métrica no da ninguna información de la distribución interna del resto de medidas.

2.2.2 Desviación estándard

La desviación estándar es la medida de dispersión más común en estadística. Si tenemos que presentar una estadística que resuma la distribución de los datos, suele ser la desviación estándar. Como sugiere su nombre, la desviación estándar indica cuál es la desviación normal de los datos. De hecho, calcula la desviación promedio de la media. Cuanto mayor sea la desviación estándar, más dispersos estarán los datos. Por el contrario, cuanto menor es la desviación estándar, más se centran los datos alrededor de la media.

Existen dos fórmulas para calcular la desviación estándard en función de si nos enfrentamos a una muestra o a una población. Una población incluye a todos los miembros de un grupo específico, mientras que una muestra contiene algunas observaciones extraídas de la población, es decir, una parte o un subconjunto de la población. Por ejemplo, la población puede ser “todas personas que viven en España” y la muestra puede ser “algunas personas que viven en España”.

La desviación estándar para una población, a partir de ahora \(\sigma\), es:

\[\sigma = \sqrt{\frac{1}{n}\sum^n_{i = 1}(x_i - \mu)^2}\] Como se puede ver en la fórmula, la desviación estándar es en realidad la desviación promedio de los datos de su media \(\mu\). Hay calcular primero el cuadrado de la diferencia entre las observaciones y la media para evitar que las diferencias negativas se compensen con diferencias positivas.

Por ejemplo, imagine una población de solo 3 trabajadores:

770, 1540 y 1827

La media es 1379 (redondeado a 1 decimal). La desviación estándar es entonces:

\[\sigma = \sqrt{\frac{1}{3}\big[(770.4 - 1379)^2 + (1540 - 1379)^2 + (1827 - 1379)^2 \big]}\] \[\sigma = 546,2\]

Por lo tanto, la desviación estándar para los salarios de estos trabajadores es de 546,2 euros. Esto significa que los salarios de los trabajadores de esta población se desvían de la media en 546,2 euros.

2.2.3 Varianza

2.2.4 Coeficiente de variación

2.3 Correlación

Las correlaciones entre variables juegan un papel importante en un análisis descriptivo. Una correlación mide la relación entre dos variables, es decir, cómo están vinculadas entre sí. En este sentido, una correlación permite saber si dos variables evolucionan en la misma dirección, en sentido contrario y si son independientes.

En este capítulo, se muestra cómo calcular coeficientes de correlación, cómo realizar pruebas de correlación y cómo visualizar correlaciones entre variables usando R.

La correlación generalmente se calcula en dos variables cuantitativas, pero también se puede calcular en dos variables cualitativas ordinales (ver prueba de independencia de chi-cuadrado).

2.3.1 Datos

Usaremos el conjunto de datos mtcars. Este conjunto de datos viene cargado por defecto en R, de modo que se utiliza en numerosas demostraciones.

# mostrar las primeras cinco filas
head(mtcars, 5)
##                    mpg cyl disp  hp drat    wt  qsec vs am gear carb
## Mazda RX4         21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
## Mazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
## Datsun 710        22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
## Hornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
## Hornet Sportabout 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2

Las variables vs yam son variables categóricas, por lo que se eliminan para este artículo:

# Eliminar las variables vs y am
library(tidyverse)
dat <- mtcars %>%
select(-vs, -am)

# mostrar las primeras cinco filas
head(dat, 5)
##                    mpg cyl disp  hp drat    wt  qsec gear carb
## Mazda RX4         21.0   6  160 110 3.90 2.620 16.46    4    4
## Mazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02    4    4
## Datsun 710        22.8   4  108  93 3.85 2.320 18.61    4    1
## Hornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44    3    1
## Hornet Sportabout 18.7   8  360 175 3.15 3.440 17.02    3    2

2.3.2 Coeficiente de correlación

La correlación entre 2 variables se calcula con la función cor(). Supón que queremos calcular la correlación entre caballos de potencia (hp) y millas por galón (mpg):

# Correlación de Pearson entre 2 variables 
cor(dat$hp, dat$mpg)
## [1] -0.7761684

Hay que fijarse en que la correlación entre las variables X e Y es igual a la correlación entre las variables Y y X, por lo que el orden de las variables en la función cor() no importa.

La función cor() calcula por defecto la correlación de Pearson, por lo que si se quiere calcular la correlación por otro método, se puede agregar el argumento method =" spearman " a la función cor():

# Correlación de Sperman entre 2 variables 
cor(dat$hp, dat$mpg,
    method = "spearman")
## [1] -0.8946646

Hay varios métodos de correlación (se puede consultar la ayuda de la la función para saber más ?cor):

  • Pearson se usa a menudo para variables cuantitativas continuas que tienen una relación lineal.
  • Spearman (es similar a Pearson pero se basa en los valores ordenados para cada variable en lugar de en los datos brutos) se usa a menudo para evaluar relaciones que involucran variables cualitativas ordinales en las que la relación sea parcialmente lineal.
  • Kendall se calcula a partir del número de pares concordantes y discordantes, se utiliza a menudo para variables ordinales cualitativas.

La función cor () también permite calcular correlaciones para varios pares de variables a la vez:

# Correlaciones entre todas las variables
round(cor(dat),
      digits = 2 # redondeo a dos decimales
      ) 
##        mpg   cyl  disp    hp  drat    wt  qsec  gear  carb
## mpg   1.00 -0.85 -0.85 -0.78  0.68 -0.87  0.42  0.48 -0.55
## cyl  -0.85  1.00  0.90  0.83 -0.70  0.78 -0.59 -0.49  0.53
## disp -0.85  0.90  1.00  0.79 -0.71  0.89 -0.43 -0.56  0.39
## hp   -0.78  0.83  0.79  1.00 -0.45  0.66 -0.71 -0.13  0.75
## drat  0.68 -0.70 -0.71 -0.45  1.00 -0.71  0.09  0.70 -0.09
## wt   -0.87  0.78  0.89  0.66 -0.71  1.00 -0.17 -0.58  0.43
## qsec  0.42 -0.59 -0.43 -0.71  0.09 -0.17  1.00 -0.21 -0.66
## gear  0.48 -0.49 -0.56 -0.13  0.70 -0.58 -0.21  1.00  0.27
## carb -0.55  0.53  0.39  0.75 -0.09  0.43 -0.66  0.27  1.00

La correlación varía de -1 a 1, de modo que el signo nos indica la dirección de la relación (aumentan a la vez o son opuestas) y el valor nos indica la fuerza de la relación (más fuerte cuanto más alejado de 0).

Una correlación negativa implica que las dos variables consideradas varían en direcciones opuestas, es decir, si una variable aumenta la otra disminuye y viceversa. Por otro lado, una correlación positiva implica que las dos variables consideradas varían en la misma dirección, es decir, si una variable aumenta, la otra aumenta y si una disminuye, la otra también disminuye.

En cuanto a la fuerza de la relación: cuanto más extremo es el coeficiente de correlación (cuanto más cerca de -1 o 1), más fuerte es la relación. Esto también significa que una correlación cercana a 0 indica que las dos variables son independientes, es decir, a medida que una variable aumenta, no hay tendencia en la otra variable a disminuir o aumentar.

Por ejemplo, la correlación de Pearson entre caballos de potencia (hp) y millas por galón (mpg) encontrada es -0.78, lo que significa que las 2 variables varían en dirección opuesta. Esto tiene sentido, los automoviles con más caballos de potencia suelen a consumir más combustible (hacen menos millas con el mismo combustible que los automóviles más potentes). Por el contrario, de la matriz de correlación vemos que la correlación entre millas por galón (mpg) y el tiempo para conducir un cuarto de milla (qsec) es 0.42, lo que significa que los automóviles rápidos (con un menor qsec) tienden a tener un peor rendimiento por galón (bajo mpg). De nuevo, esto tiene sentido, ya que los coches rápidos tienden a consumir más combustible.

2.3.3 Test de correlación

Volver una vez leída la sección sobre test de hipótesis.

Hay que tener en cuenta que el valor p se basa en el coeficiente de correlación y en el tamaño de la muestra. Cuanto mayor sea el tamaño de la muestra y más extrema será la correlación (más cercana a -1 o 1). Con un tamaño de muestra pequeño, es posible obtener una correlación relativamente grande en la muestra (según el coeficiente de correlación), pero aún así encontrar una correlación no significativamente diferente de 0 en la población (según la prueba de correlación). Por este motivo, se recomienda realizar siempre un test de correlación antes de interpretar un coeficiente de correlación para evitar conclusiones erróneas.

A diferencia de una matriz de correlación que indica los coeficientes de correlación entre algunos pares de variables en la muestra, se utiliza un test de correlación para probar si la correlación (\(\rho\)) entre dos variables es significativamente diferente de 0 o no en la población.

En realidad, un coeficiente de correlación diferente de 0 en la muestra no significa que la correlación sea significativamente diferente de 0 en la población. Esto debe probarse con un test de hipótesis.

Las hipótesis (nula y alternativa) para el test de correlación son las siguientes:

  • \(H_0\): \(\rho = 0\) (si no existe una relación lineal entre las dos variables)
  • \(H_1\): \(\rho\ne 0\) (si existe una relación lineal entre las dos variables)

A través de esta prueba de correlación, lo que realmente estamos probando es si:

  • La muestra contiene evidencia suficiente para rechazar la hipótesis nula y concluir que el coeficiente de correlación no es igual a 0, por lo que la relación existe en la población.
  • La muestra no contiene suficiente evidencia de que el coeficiente de correlación no sea igual a 0, por lo que en este caso no rechazamos la hipótesis nula de no-relación entre las variables de la población.

Supongamos que queremos probar si el ratio del eje trasero (drat) está correlacionado con el tiempo necesario para conducir 1/4 de milla (qsec):

# Test de correlación de Pearson
test <- cor.test(dat$drat, dat$qsec)
test
## 
##  Pearson's product-moment correlation
## 
## data:  dat$drat and dat$qsec
## t = 0.50164, df = 30, p-value = 0.6196
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.265947  0.426340
## sample estimates:
##        cor 
## 0.09120476

El p-valor de la prueba de correlación entre estas 2 variables es 0.62. Al nivel de significancia del 5%, no se rechaza la hipótesis nula de no correlación. Por lo tanto, concluimos que no rechazamos la hipótesis de que no existe una relación lineal entre las 2 variables.1

Esta prueba demuestra que incluso si el coeficiente de correlación es diferente de 0 (la correlación es 0.09 en la muestra), en realidad no es significativamente diferente de 0 en la población.

2.3.4 Visualizando correlaciones

Una buena forma de visualizar una correlación entre 2 variables es mediante un diagrama de dispersión. Por ejemplo:

# Diagrama de dispersión con R base
plot(dat$hp, dat$mpg)

Para visualizar la relación entre más de 2 variablesse puede usar la función pair (). En este caso limitamos el ejemplo a tres variables:

# Multiples diagramas de dispersión
pairs(dat[, c(1, 4, 6)])

Por otra parte, existen numerosas librerías de R que permiten generar este tipo de gráficos con distintas opciones. Por ejemplo con ggplot2:

# Diagrama de dispersión con ggplot2
library(ggplot2)

ggplot(dat) +
 aes(x = hp, y = mpg) +
 geom_point(colour = "#0c4c8a") +
 theme_minimal()

O representaciones más modernas como con la librería corrplot:

# improved correlation matrix
library(corrplot)

corrplot(cor(dat),
         method = "number",
         type = "upper" # show only upper side
         )

2.4 Ejercicios

  1. Estableced en clase un debate sobre variables de carácter territorial que consideréis que pueden estar correlacionadas y en qué medida.

  1. Es importante recordar que probamos una relación lineal entre las dos variables ya que usamos la correlación de Pearson. Puede darse el caso de que exista una relación entre las dos variables en la población, pero esta relación puede no ser lineal.↩︎