Identificar, describir e interpretar medidas de variabilidad en un conjunto de datos.
El caso se relaciona con identificar medidas de variabilidad como la varianza, la desviación estándar y el coeficiente de variación.
Primero se utilizan datos del libro del autor (Anderson, Sweeney, and Williams 2008a) como ejemplo para calcular la varianza, y a partir de ahí, se determina la desviación y finalmente el coeficiente de variación.
Segundo con datos de alumnos se calculan las mismas medias de dispersión, luego, se selecciona tres carreras y se determina cuál de los tres conjuntos de datos tiene mayor o menor dispersión conforme al valor % del coeficiente de variación.
¿Para que sirven las medidas de dispersión?
El reporte de una medida de centralización como la media, mediana y moda sólo da información parcial sobre un conjunto o distribución de datos. Diferentes muestras o poblaciones pueden tener medidas idénticas de centro y aun así diferir una de otra en otras importantes maneras. (Devore 2016a)
La imagen siguiente muestra tres conjuntos de datos y los tres tienen media y mediana igual, sin embargo la dispersión es diferentes, es decir cual conjunto de datos se aleja mas de la media.
La primera tiene la cantidad más grande de variabilidad, la tercera tiene la cantidad más pequeña y la segunda es intermedia respecto a las otras dos en este aspecto. (Devore 2016a).
La varianza es una medida de variabilidad que utiliza todos los datos. La varianza está basada en la diferencia entre el valor de cada observación (xixi) y la media x¯x¯ .(Anderson, Sweeney, and Williams 2008a).
Se identifican las fórmulas para varianza poblacional y muestral, dependiendo de los datos a analizar, si es todas las observaciones de la población y solo una muestra de la misma.
Para efectos de este ejercicio se utiliza mas específicamente la varianza y desviación muestral.
\[ \sigma^2 = \frac{\sum_{i=1}^N(x_i- \mu)^2}{N} \]
siendo μμ la media poblacional y NN el total de los datos de la población.
\[ S^2 = \frac{\sum_{i=1}^n(x_i- \bar{x})^2}{n-1} \]
siendo x¯x¯ la media muestral y nn el total de los datos de la muestra.
Las unidades al cuadrado de la varianza dificultan la comprensión e interpretación intuitiva de los valores numéricos de la varianza.
La desviación estándar se define como la raíz cuadrada positiva de la varianza.
Continuando con la notación adoptada para la varianza muestral y para la varianza poblacional, se emplea ςς para denotar la desviación estándar muestral y σσ para denotar la desviación estándar poblacional.
¿Qué se gana con convertir la varianza en la correspondiente desviación estándar?.
Como la desviación estándar es la raíz cuadrada de la varianza, las unidades de la varianza, son al cuadrado, posiblemente dificulta su interpretación, por tanto, la desviación estándar de se interpreta de mejor manera la variabilidad de los datos porque el valor resultante se mide en las mismas unidades que los datos originales. (Anderson, Sweeney, and Williams 2008a).
Una interpretación preliminar de la desviación estándar muestral es que es el tamaño de una desviación típica o representativa de la media muestral dentro de la muestra dada.(Devore 2016b)
\[ \sigma = \sqrt{\sigma^2} \]
\[ S = \sqrt{S^2} \]
En algunas ocasiones se requiere un estadístico descriptivo que indique cuán grande es la desviación estándar en relación con la media. Existe el coeficiente de variación y resuelve ese propósito.
La fórmula del coeficiente de variación indica el grado de dispersión de un conjunto de datos con respecto a la media.
\[ CV = \left(\frac{\sigma}{\bar{x}} \times 100 \right) \text{%} \]
Cargas las librerías necesarias para los ejercicios de todo el caso.
library(readr)
## Warning: package 'readr' was built under R version 4.0.4
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.0.4
El desarrollo del caso inicia con un ejercicio obtenido del libro de (Anderson, Sweeney, and Williams 2008a). El segundo ejercicio serán los datos de alumnos con la variable Promedio ya conocidos en casos anteriores.
Son datos de sueldos en dólares de trabajadores de una empresa.
datos <- c(3450,3550, 3650, 3480, 3355, 3310, 3490, 3730, 3540, 3925, 3520, 3480 )
datos <- data.frame(xi=datos)
Primero se creó un vector llamado datos, luego ese mismo vector se transformó en data.frame con el mismo nombre de datos.
En las siguientes lineas de código R, se utiliza una función llamada cbind() para agregar columnas al data.frame existente llamado datos. La función nrow() sirve para identificar cuántas observaciones tiene la muestra de los datos, es decir, el valor de nn =12.
Al final debe haber un conjunto de datos con cinco columnas, “xi, media, diferencia, alcuadrado.”
Se determina la sumatoria de las diferencias al cuadrado conforme a la fórmula y con ello el valor de la varianza. Se genra tambien la variable media para utilizarse a lo largo del caso.
n <- nrow(datos)
summary(datos)
## xi
## Min. :3310
## 1st Qu.:3472
## Median :3505
## Mean :3540
## 3rd Qu.:3575
## Max. :3925
datos <- cbind(datos, media = mean(datos$xi))
datos <- cbind(datos, diferencia=datos$xi - datos$media)
datos <- cbind(datos, alcuadrado = datos$diferencia^2)
media <- mean(datos$xi)
datos
## xi media diferencia alcuadrado
## 1 3450 3540 -90 8100
## 2 3550 3540 10 100
## 3 3650 3540 110 12100
## 4 3480 3540 -60 3600
## 5 3355 3540 -185 34225
## 6 3310 3540 -230 52900
## 7 3490 3540 -50 2500
## 8 3730 3540 190 36100
## 9 3540 3540 0 0
## 10 3925 3540 385 148225
## 11 3520 3540 -20 400
## 12 3480 3540 -60 3600
sumatoria <- sum(datos$alcuadrado)
sumatoria
## [1] 301850
varianza <- sumatoria / (n-1)
varianza
## [1] 27440.91
desviacion <- sqrt(varianza)
desviacion
## [1] 165.653
CV <- desviacion / media * 100
CV
## [1] 4.679463
El Coeficiente de Variación indica que la desviación estándar muestral es sólo 4.6794627 % del valor de la media muestral. Entre más bajo sea el valor porcentual del CV menor dispersión se encuentran en los datos. En general, el coeficiente de variación es un estadístico útil para comparar la variabilidad de variables que tienen desviaciones estándar distintas y medias distintas. (Anderson, Sweeney, and Williams 2008b).
Existen funciones en R que sirven para determinar varianza, desviación de manera directa, con ellas se podrá determinar de igual forma el coeficiente de variación. Las funciones son var() y sd() respectivamente para varianza y desviación estándar.
var(datos$xi)
## [1] 27440.91
#[1] 27440.91
sd(datos$xi)
## [1] 165.653
#[1] 165.653
CV <- sd(datos$xi) / mean(datos$xi) * 100
CV
## [1] 4.679463
Se muestra la dispersión del sueldo de cada trabajador y la linea horizontal indicando la media.
titulo <- "Sueldos"
subtitulo <- paste("Media =", round(media,2)," Varianza=",round(varianza,2)," Desv. Std.=",round(desviacion,2), " CV =", round(CV, 2),"%")
ggplot(data = datos, mapping = aes(x = 1:n, y = xi)) +
geom_point(colour = "purple") +
geom_hline(yintercept = media, colour = "black") +
ggtitle(titulo, subtitle = subtitulo) +
xlab('Observaciones') + ylab('Sueldos')
Se presenta un ejercicio de medidas de dispersión con datos de alumnos
Se descargan datos de la dirección url “Datos de alumno con promedio superior a cero” de github,; los datos ya vienen con la variable Promedio de todas las observaciones superior a cero. En los casos 5 y 4 se tuvo la necesidad de limpiar observaciones, en este caso 6 ya no es necesario hacer dicha tarea de limpieza de registros.
Nuevamente se utiliza la función readr() para descargar un archivo texto (CSV) separado por comas; en esta misma función se utiliza el argumento stringsAsFactors = TRUE que significa que desde la carga de los datos y desde un inicio se considere como categóricas o tipo factor a las variable que vienen como tipo string o character del conjunto de datos que se carga.
Se utiliza la función str() para conocer el tipo de estructura de los datos, además, despliega los tipos de datos de cada variable, las que son numéricas, factor, entre otros, y la cantidad de registros del conjunto de datos cargado a R.
Nuevamente la función summary() muestra sólo las columnas 2,4,8 y 9 únicamente, summary(datos[c(2,4,8,9)]).
datos <- read.csv("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/datos/promedios%20alumnos/datos.alumnosEJ2021.csv", stringsAsFactors = TRUE)
#datos$Carrera <- factor(datos$Carrera)
summary(datos[c(2,4,8,9)])
## X Alumno Promedio Carrera
## Min. : 1.0 Min. : 1.0 Min. :70.00 : 1
## 1st Qu.:185.8 1st Qu.: 47.0 1st Qu.:84.47 ADMINISTRACION:182
## Median :370.5 Median :104.0 Median :87.67 INFORMATICA : 95
## Mean :370.5 Mean :142.0 Mean :87.62 SISTEMAS :386
## 3rd Qu.:555.2 3rd Qu.:217.2 3rd Qu.:90.81 TIC : 76
## Max. :740.0 Max. :419.0 Max. :99.00
## NA's :1
str(datos)
## 'data.frame': 740 obs. of 9 variables:
## $ X.1 : int 1 2 3 4 5 6 7 8 9 10 ...
## $ X : int 1 2 3 4 5 6 7 8 9 10 ...
## $ NoControl : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Alumno : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Semestre : int 12 13 10 13 10 10 13 11 11 10 ...
## $ Cr.Aprobados: int 207 226 235 231 235 235 231 197 235 231 ...
## $ Cr.Cursando : int 19 9 10 14 10 10 4 23 10 4 ...
## $ Promedio : num 79.8 82.5 95.2 79.3 92.7 ...
## $ Carrera : Factor w/ 5 levels "","ADMINISTRACION",..: 4 4 4 4 4 4 4 4 4 4 ...
Los primeros cincuenta registros
head(datos[,c(2,8,9)], 50)
## X Promedio Carrera
## 1 1 79.84 SISTEMAS
## 2 2 82.55 SISTEMAS
## 3 3 95.16 SISTEMAS
## 4 4 79.32 SISTEMAS
## 5 5 92.67 SISTEMAS
## 6 6 91.25 SISTEMAS
## 7 7 82.46 SISTEMAS
## 8 8 83.72 SISTEMAS
## 9 9 85.37 SISTEMAS
## 10 10 85.12 SISTEMAS
## 11 11 78.22 SISTEMAS
## 12 12 91.25 SISTEMAS
## 13 13 84.59 SISTEMAS
## 14 14 89.16 SISTEMAS
## 15 15 82.51 SISTEMAS
## 16 16 81.58 SISTEMAS
## 17 17 82.63 SISTEMAS
## 18 18 87.18 SISTEMAS
## 19 19 89.55 SISTEMAS
## 20 20 86.27 SISTEMAS
## 21 21 84.02 SISTEMAS
## 22 22 82.23 SISTEMAS
## 23 23 83.37 SISTEMAS
## 24 24 92.67 SISTEMAS
## 25 25 82.75 SISTEMAS
## 26 26 95.94 SISTEMAS
## 27 27 91.27 SISTEMAS
## 28 28 89.33 SISTEMAS
## 29 29 86.02 SISTEMAS
## 30 30 83.45 SISTEMAS
## 31 31 80.81 SISTEMAS
## 32 32 78.33 SISTEMAS
## 33 33 89.35 SISTEMAS
## 34 34 83.76 SISTEMAS
## 35 35 80.42 SISTEMAS
## 36 36 94.43 SISTEMAS
## 37 37 83.29 SISTEMAS
## 38 38 87.72 SISTEMAS
## 39 39 85.25 SISTEMAS
## 40 40 93.16 SISTEMAS
## 41 41 81.88 SISTEMAS
## 42 42 80.86 SISTEMAS
## 43 43 82.24 SISTEMAS
## 44 44 87.78 SISTEMAS
## 45 45 81.60 SISTEMAS
## 46 46 84.83 SISTEMAS
## 47 47 83.71 SISTEMAS
## 48 48 90.44 SISTEMAS
## 49 49 90.79 SISTEMAS
## 50 50 89.08 SISTEMAS
Los últimos cincuenta registros
tail(datos[,c(2,8,9)], 50)
## X Promedio Carrera
## 691 691 88.28 ADMINISTRACION
## 692 692 86.86 ADMINISTRACION
## 693 693 95.42 ADMINISTRACION
## 694 694 86.88 ADMINISTRACION
## 695 695 89.79 ADMINISTRACION
## 696 696 86.73 ADMINISTRACION
## 697 697 85.86 ADMINISTRACION
## 698 698 85.20 ADMINISTRACION
## 699 699 92.75 ADMINISTRACION
## 700 700 93.55 ADMINISTRACION
## 701 701 89.25 ADMINISTRACION
## 702 702 92.92 ADMINISTRACION
## 703 703 82.50 ADMINISTRACION
## 704 704 91.44 ADMINISTRACION
## 705 705 92.44 ADMINISTRACION
## 706 706 95.17 ADMINISTRACION
## 707 707 93.00 ADMINISTRACION
## 708 708 85.13 ADMINISTRACION
## 709 709 97.67 ADMINISTRACION
## 710 710 90.98 ADMINISTRACION
## 711 711 92.30 ADMINISTRACION
## 712 712 88.32 ADMINISTRACION
## 713 713 87.50 ADMINISTRACION
## 714 714 97.17 ADMINISTRACION
## 715 715 84.50 ADMINISTRACION
## 716 716 92.67 ADMINISTRACION
## 717 717 86.36 ADMINISTRACION
## 718 718 88.79 ADMINISTRACION
## 719 719 98.17 ADMINISTRACION
## 720 720 91.93 ADMINISTRACION
## 721 721 94.50 ADMINISTRACION
## 722 722 86.60 ADMINISTRACION
## 723 723 92.83 ADMINISTRACION
## 724 724 85.00 ADMINISTRACION
## 725 725 84.92 ADMINISTRACION
## 726 726 97.11 ADMINISTRACION
## 727 727 91.72 ADMINISTRACION
## 728 728 91.40 ADMINISTRACION
## 729 729 87.71 ADMINISTRACION
## 730 730 86.29 ADMINISTRACION
## 731 731 94.41 ADMINISTRACION
## 732 732 88.79 ADMINISTRACION
## 733 733 90.00 ADMINISTRACION
## 734 734 92.78 ADMINISTRACION
## 735 735 89.48 ADMINISTRACION
## 736 736 85.86 ADMINISTRACION
## 737 737 94.62 ADMINISTRACION
## 738 738 89.47 ADMINISTRACION
## 739 739 86.66 ADMINISTRACION
## 740 740 NA
media <- mean(datos$Promedio)
media
## [1] NA
Se determina la varianza de la variable Promedio del conjunto de datos.
La variable Promedio es una variable cuantitativa que se que significa el promedio de alumnos inscritos en una Institución Educativa. Siendo variable cuantitativa se puede aplicar medidas de dispersión.
varianza <- var(datos$Promedio)
varianza
## [1] NA
Se determina la desviación estándar de la variable Promedio del conjunto de datos.
desviacion <- sd(datos$Promedio)
desviacion
## [1] NA
CV <- desviacion / media * 100
CV
## [1] NA
Se visualiza el diagrama de dispersión de todos los alumnos de todas las carreras en su variable Promedio.
titulo <- "Todos los alumnos"
subtitulo <- paste("Media=", round(media,2), " Varianza=",round(varianza,2)," Desv. Std.=",round(desviacion,2), " CV =", round(CV, 2),"%")
ggplot(data = datos, mapping = aes(x = X, y = Promedio)) +
geom_point(colour = "blue") +
geom_hline(yintercept = media, colour = "red") +
ggtitle(titulo, subtitle = subtitulo) +
xlab('Observaciones') + ylab('Promedios')
## Warning: Removed 1 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
Se eligen tres carreras diferentes, ARQUITECTURA, CIVIL, INDUSTRIAL
datos.arquitectura <- subset(datos, Carrera == 'ARQUITECTURA')
head(datos.arquitectura)
## [1] X.1 X NoControl Alumno Semestre
## [6] Cr.Aprobados Cr.Cursando Promedio Carrera
## <0 rows> (or 0-length row.names)
media.arquitectura <- mean(datos.arquitectura$Promedio)
varianza.arquitectura <- var(datos.arquitectura$Promedio)
desviacion.arquitectura <- sd(datos.arquitectura$Promedio)
CV.arquitectura <- desviacion.arquitectura / media.arquitectura * 100
En a instrucción ggplot(data = datos.civil, mapping = aes(x = Alumno, y = Promedio)) se toma en el eje de las X el consecutivo de la variable Alumnos, que es desde 1 hasta el último alumno de cada carrera; y en el eje de las Y’s el Promedio.
titulo <- "Alumnos Arquitectura"
subtitulo <- paste("Media=", round(media.arquitectura,2), " Varianza=",round(varianza.arquitectura,2)," Desv. Std.=",round(desviacion.arquitectura,2), " CV =", round(CV.arquitectura, 2),"%")
ggplot(data = datos.arquitectura, mapping = aes(x = Alumno, y = Promedio)) +
geom_point(colour = "orange") +
geom_hline(yintercept = media, colour = "red") +
ggtitle(titulo, subtitle = subtitulo) +
xlab('Observaciones') + ylab('Promedios')
## Warning: Removed 1 rows containing missing values (geom_hline).
datos.civil <- subset(datos, Carrera == 'CIVIL')
head(datos.civil)
## [1] X.1 X NoControl Alumno Semestre
## [6] Cr.Aprobados Cr.Cursando Promedio Carrera
## <0 rows> (or 0-length row.names)
datos.industrial <- subset(datos, Carrera == 'INDUSTRIAL')
head(datos.industrial)
## [1] X.1 X NoControl Alumno Semestre
## [6] Cr.Aprobados Cr.Cursando Promedio Carrera
## <0 rows> (or 0-length row.names)
media.industrial <- mean(datos.industrial$Promedio)
varianza.industrial <- var(datos.industrial$Promedio)
desviacion.industrial <- sd(datos.industrial$Promedio)
CV.industrial <- desviacion.industrial / media.industrial * 100
titulo <- "Alumnos Industrial"
subtitulo <- paste("Media=", round(media.industrial,2), " Varianza=",round(varianza.industrial,2)," Desv. Std.=",round(desviacion.industrial,2), " CV =", round(CV.industrial, 2),"%")
ggplot(data = datos.industrial, mapping = aes(x = Alumno, y = Promedio)) +
geom_point(colour = "green") +
geom_hline(yintercept = media, colour = "red") +
ggtitle(titulo, subtitle = subtitulo) +
xlab('Observaciones') + ylab('Promedios')
## Warning: Removed 1 rows containing missing values (geom_hline).
ggplot(data = datos, mapping = aes(x = Alumno, y = Promedio, color = Carrera)) +
geom_point() +
facet_wrap(~ Carrera, nrow = 5)
## Warning: Removed 1 rows containing missing values (geom_point).
Las medidas de dispersión son números que indican si una variable se mueve mucho, poco, más o menos que otra.
La varianza es una medida de dispersión que representa la variabilidad de una serie de datos respecto a su media.
Se determina la varianza de la variable Promedio del conjunto de datos.
La desviación estándar se define como la raíz cuadrada positiva de la varianza.
La desviacion estandar es un índice numérico de la dispersión de un conjunto de datos (o población). Mientras mayor es la desviación estándar, mayor es la dispersión de la población. La desviación estándar es un promedio de las desviaciones individuales de cada observación con respecto a la media de una distribución.
El coeficiente de variación es la relación entre la desviación típica de una muestra y su media. El coeficiente de variación permite comparar las dispersiones de dos distribuciones distintas, siempre que sus medias sean positivas.
La fórmula del coeficiente de variación indica el grado de dispersión de un conjunto de datos con respecto a la media.
media= 86.59
varianza= 20.72
desviación= 4.55
CV= 5.25
ARQUITECTURA
CV = 4.66
CIVIL
CV= 5.09
INDUSTRIAL
CV= 5.08
Saber cuáles son las medidas de dispersión y cómo utilizarlas en el lenguaje R
Anderson, David R., Dennis J. Sweeney, and Thomas A. Williams. 2008a. Estadística Para Administración y Economía. 10th ed. Australia • Brasil • Corea • España • Estados Unidos • Japón • México • Reino Unido • Singapur: Cengage Learning,.
———. 2008b. Estadística Para Administración y Economía. 10th ed. Australia Brasil Corea España Estados Unidos Japón México Reino Unido Singapur: Cengage Learning,.
Devore, Jay L. 2016b. Fundamentos de Probabilidad y Estadística. Primera Edición. CENGAGE.
———. 2016a. Fundamentos de Probabilidad y Estadística. Primera Edición. CENGAGE.