Objetivo

Identificar medidas de dispersión y visualizar datos de alumnos inscritos de una institución d<e educación superior.

1. Cargar librerías library (readr), (ggplot2), (dplyr)

library(dplyr) 
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(ggplot2)

2. Cargar los datos de la dirección citada.

datos <- read.csv("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/datos/promedios%20alumnos/datos%20alumnos%20promedios%20SEP%202020.csv", encoding = "UTF-8")
head(datos)
##   No..Control Alumno Semestre Cr..Apr. Carga Promedio  Carrera
## 1    20190001      1       11      198    19    80.21 SISTEMAS
## 2    20190002      2       11      235    10    84.33 SISTEMAS
## 3    20190003      3        9      235    10    95.25 SISTEMAS
## 4    20190004      4        9      226    19    95.00 SISTEMAS
## 5    20190005      5       10      231    14    82.32 SISTEMAS
## 6    20190006      6        9      212    23    95.02 SISTEMAS
tail(datos)
##      No..Control Alumno Semestre Cr..Apr. Carga Promedio        Carrera
## 5924    20195924   5924        2       27    28    92.83 ADMINISTRACION
## 5925    20195925   5925        7       94    13    80.95 ADMINISTRACION
## 5926    20195926   5926        5      103    32    92.68 ADMINISTRACION
## 5927    20195927   5927        4       79    34    86.18 ADMINISTRACION
## 5928    20195928   5928        5      108    32    90.48 ADMINISTRACION
## 5929    20195929   5929        7      169    32    92.33 ADMINISTRACION

3. Genera gráfica de caja de promedios de alumnos en función de las carreras para identificar cuartiles.

ggplot(filter(datos, Promedio > 0), aes(x = Carrera, y = Promedio, color= Carrera ) ) +
    geom_boxplot() +
  labs(title = "Promedios de las carreras")

4. Identificar medidas de tendencia central con histograma y líneas de sus media y mediana de cada carrera en función de los promedios.

ADMINISTRACION.

administracion <- filter (datos, Promedio > 0 & Carrera == "ADMINISTRACION") 
mean(administracion$Promedio)
## [1] 89.44312
median(administracion$Promedio)
## [1] 89.605
ggplot(administracion, aes(Promedio)) +
  geom_histogram(bins = 30) +
  geom_vline(aes(xintercept = median(Promedio),
                  color = "mediana"),
              linetype = "solid",
              size = 2) +
    geom_vline(aes(xintercept = mean(Promedio),
                  color = "media"),
              linetype = "solid",
              size = 2) +
  labs(title = "Histograma de Promedio de Administración",subtitle =  paste("Media = ", round(mean(administracion$Promedio),2), ", Mediana = ", round(median(administracion$Promedio),2))) 

CIVIL.

civil <- filter (datos, Promedio > 0 & Carrera == "CIVIL") 
mean(civil$Promedio)
## [1] 84.281
median(civil$Promedio)
## [1] 83.915
ggplot(civil, aes(Promedio)) +
  geom_histogram(bins = 30) +
  geom_vline(aes(xintercept = median(Promedio),
                  color = "mediana"),
              linetype = "solid",
              size = 2) +
    geom_vline(aes(xintercept = mean(Promedio),
                  color = "media"),
              linetype = "solid",
              size = 2) +
  labs(title = "Histograma de Promedio de civil",subtitle =  paste("Media = ", round(mean(civil$Promedio),2), ", Mediana = ", round(median(civil$Promedio),2))) 

MECANICA.

mecanica <- filter (datos, Promedio > 0 & Carrera == "MECANICA") 
mean(mecanica$Promedio)
## [1] 82.58467
median(mecanica$Promedio)
## [1] 82.02
ggplot(mecanica, aes(Promedio)) +
  geom_histogram(bins = 30) +
  geom_vline(aes(xintercept = median(Promedio),
                  color = "mediana"),
              linetype = "solid",
              size = 2) +
    geom_vline(aes(xintercept = mean(Promedio),
                  color = "media"),
              linetype = "solid",
              size = 2) +
  labs(title = "Histograma de Promedio de mecanica",subtitle =  paste("Media = ", round(mean(mecanica$Promedio),2), ", Mediana = ", round(median(mecanica$Promedio),2))) 

SISTEMAS.

sistemas <- filter (datos, Promedio > 0 & Carrera == "SISTEMAS") 
mean(sistemas$Promedio)
## [1] 85.90464
median(sistemas$Promedio)
## [1] 85.34
ggplot(sistemas, aes(Promedio)) +
  geom_histogram(bins = 30) +
  geom_vline(aes(xintercept = median(Promedio),
                  color = "mediana"),
              linetype = "solid",
              size = 2) +
    geom_vline(aes(xintercept = mean(Promedio),
                  color = "media"),
              linetype = "solid",
              size = 2) +
  labs(title = "Histograma de Promedio de sistemas",subtitle =  paste("Media = ", round(mean(sistemas$Promedio),2), ", Mediana = ", round(median(sistemas$Promedio),2))) 

5. Identificar varianza y desviación estándar en una gráfica de dispersión de los promedios de cada carrera.

ADMINISTRACION.

n <- nrow(administracion)
ggplot(administracion, aes(x = 1:n, y = Promedio)) +
   geom_point() +
    labs(title = "Dispersión de Promedio de Administración", subtitle =  paste("Varianza = ", round(var(administracion$Promedio),2), ", DesvStd = ", round(sd(administracion$Promedio),2), ", C.V. = ",  round(sd(administracion$Promedio) / mean(administracion$Promedio) *  100, 2 )))

CIVIL.

n <- nrow(civil)
ggplot(civil, aes(x = 1:n, y = Promedio)) +
   geom_point() +
    labs(title = "Dispersión de Promedio de civil", subtitle =  paste("Varianza = ", round(var(civil$Promedio),2), ", DesvStd = ", round(sd(civil$Promedio),2), ", C.V. = ",  round(sd(civil$Promedio) / mean(civil$Promedio) *  100, 2 )))

MECANICA.

n <- nrow(mecanica)
ggplot(mecanica, aes(x = 1:n, y = Promedio)) +
   geom_point() +
    labs(title = "Dispersión de Promedio de mecanica", subtitle =  paste("Varianza = ", round(var(mecanica$Promedio),2), ", DesvStd = ", round(sd(mecanica$Promedio),2), ", C.V. = ",  round(sd(mecanica$Promedio) / mean(mecanica$Promedio) *  100, 2 )))

SISTEMAS.

n <- nrow(sistemas)
ggplot(sistemas, aes(x = 1:n, y = Promedio)) +
   geom_point() +
    labs(title = "Dispersión de Promedio de sistemas", subtitle =  paste("Varianza = ", round(var(sistemas$Promedio),2), ", DesvStd = ", round(sd(sistemas$Promedio),2), ", C.V. = ",  round(sd(sistemas$Promedio) / mean(sistemas$Promedio) *  100, 2 )))

6. Determinar una tabla para todos los parámetros estadísticos solicitados.

tabla <- datos %>%
    group_by (Carrera) %>%
    summarise(n = n(), media = mean(Promedio), mediana = median(Promedio), vari = var(Promedio), desvstd = sd(Promedio), cv = desvstd / media * 100)
## `summarise()` ungrouping output (override with `.groups` argument)
tabla
## # A tibble: 14 x 7
##    Carrera                 n media mediana  vari desvstd    cv
##    <chr>               <int> <dbl>   <dbl> <dbl>   <dbl> <dbl>
##  1 ADMINISTRACION        497  74.5    88.4 1125.    33.5  45.0
##  2 ARQUITECTURA          675  70.1    85.4 1163.    34.1  48.7
##  3 BIOQUIMICA            441  68.6    82.8 1126.    33.6  48.9
##  4 CIVIL                 648  73.1    83.1  834.    28.9  39.5
##  5 ELECTRICA             280  60.7    81.8 1414.    37.6  61.9
##  6 ELECTRONICA           161  67.3    85.3 1324.    36.4  54.1
##  7 GESTION EMPRESARIAL   585  74.2    86.7 1013.    31.8  42.9
##  8 INDUSTRIAL            707  74.2    83.7  819.    28.6  38.6
##  9 INFORMATICA           101  60.6    83.6 1581.    39.8  65.6
## 10 MECANICA              301  61.7    80.7 1302.    36.1  58.4
## 11 MECATRONICA           432  70.8    83.4  981.    31.3  44.3
## 12 QUIMICA               568  72.6    84.6  996.    31.6  43.5
## 13 SISTEMAS              452  70.9    84.1 1081.    32.9  46.4
## 14 TIC                    81  66.6    81.7 1209.    34.8  52.2

7. Interpretación del CASO 6.

A través de la caja de promedios podemos observar que existen datos atípicos en casi todas las carreras, por ejemplo, en la carrera de mecánica se pueden observar datos atípicos superiores a 95 y en la carrera de bioquímica se pueden ver dos datos atípicos; uno superior a 95 y el otro de 73 aproximadamente. También se pude notar que la carrera con mejor promedio es administración y la de promedio mas bajo mecánica.
A través de la tabla del paso 6 podemos ver que la carrera de informática es la que tiene mayor dispersión de los datos y que la carrera de civil es la que menos dispersión de los datos tiene, y si vemos su tabla de dispersión podemos notar que efectivamente todos los puntos están muy juntos en comparación a otras carreras.