#Objetivo.
#Identificar medidas de dispersión y visualizar datos de alumnos inscritos de una institución de educación superior.
#Descripción.
#Cargar datos de los alumnos inscritos en el semestre Septiembre 2020-Enero 2021 y determinar medidas centrales media, mediana; encontrar medidas de dispersión varianza, desviación estándar y coeficiente de variación; visualizar datos con diagrama de cajas de alumnos por carrera y sus promedios para ubicar cuartiles, gráficas de dispersión de cada carrera y los promedios de cada alumno identificando el coeficiente de dispersión en cada conjunto de datos.
#1. Cargar librerías.
library(readr)
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?fbclid=IwAR25NkkYE7ReSQnH_JbYJnEyiFzIAACdmSWlUdl3nb_AQhZ8-g0w-DoeY4Q", 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
#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 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
## [1] 89.44312
median(Administracion$Promedio)
## [1] 89.605
## [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)))

#ARQUITECTURA
Arquitectura <- filter (datos, Promedio > 0 & Carrera == "ARQUITECTURA")
mean(Arquitectura$Promedio)
## [1] 86.46481
## [1] 86.46481
median(Arquitectura$Promedio)
## [1] 86.58
ggplot(Arquitectura, 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 Arquitectura",subtitle = paste("Media = ", round(mean(Arquitectura$Promedio),2), ", Mediana = ", round(median(Arquitectura$Promedio),2)))

#BIOQUIMICA
Bioquimica <- filter (datos, Promedio > 0 & Carrera == "BIOQUIMICA")
mean(Bioquimica$Promedio)
## [1] 84.68143
## [1] 84.68143
median(Bioquimica$Promedio)
## [1] 84.06
## [1] 84.06
ggplot(Bioquimica, 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 Bioquimica",subtitle = paste("Media = ", round(mean(Bioquimica$Promedio),2), ", Mediana = ", round(median(Bioquimica$Promedio),2)))

#CIVIL
Civil <- filter (datos, Promedio > 0 & Carrera == "CIVIL")
mean(Civil$Promedio)
## [1] 84.281
## [1] 84.281
median(Civil$Promedio)
## [1] 83.915
## [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)))

#ELECTRICA
Electrica<- filter (datos, Promedio > 0 & Carrera == "ELECTRICA")
mean(Electrica$Promedio)
## [1] 83.77305
## [1] 83.77305
median(Electrica$Promedio)
## [1] 83.24
## [1] 83.24
ggplot(Electrica, 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 Electrica",subtitle = paste("Media = ", round(mean(Electrica$Promedio),2), ", Mediana = ", round(median(Electrica$Promedio),2)))

#ELECTRONICA
Electronica <- filter (datos, Promedio > 0 & Carrera == "ELECTRONICA")
mean(Electronica$Promedio)
## [1] 86.6572
## [1] 86.6572
median(Electronica$Promedio)
## [1] 86.67
## [1] 86.67
ggplot(Electronica, 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 Electronica",subtitle = paste("Media = ", round(mean(Electronica$Promedio),2), ", Mediana = ", round(median(Electronica$Promedio),2)))

#GESTION EMPRESARIAL
Gestion.Empresarial <- filter (datos, Promedio > 0 & Carrera == "GESTION EMPRESARIAL")
mean(Gestion.Empresarial$Promedio)
## [1] 87.66966
## [1] 87.66966
median(Gestion.Empresarial$Promedio)
## [1] 87.59
## [1] 87.59
ggplot(Gestion.Empresarial, 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 Gestion Empresarial",subtitle = paste("Media = ", round(mean(Gestion.Empresarial$Promedio),2), ", Mediana = ", round(median(Gestion.Empresarial$Promedio),2)))

#INDUSTRIAL
Industrial <- filter (datos, Promedio > 0 & Carrera == "INDUSTRIAL")
mean(Industrial$Promedio)
## [1] 85.01737
## [1] 85.01737
median(Industrial$Promedio)
## [1] 84.64
## [1] 84.64
ggplot(Industrial, 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 Industrial",subtitle = paste("Media = ", round(mean(Industrial$Promedio),2), ", Mediana = ", round(median(Industrial$Promedio),2)))

#INFORMATICA
Informatica <- filter (datos, Promedio > 0 & Carrera == "INFORMATICA")
mean(Informatica$Promedio)
## [1] 86.26577
## [1] 86.26577
median(Informatica$Promedio)
## [1] 86.64
## [1] 86.64
ggplot(Informatica, 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 Informatica",subtitle = paste("Media = ", round(mean(Informatica$Promedio),2), ", Mediana = ", round(median(Informatica$Promedio),2)))

#MECANICA
Mecanica <- filter (datos, Promedio > 0 & Carrera == "MECANICA")
mean(Mecanica$Promedio)
## [1] 82.58467
## [1] 82.58467
median(Mecanica$Promedio)
## [1] 82.02
## [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)))

#MECATRONICA
Mecatronica <- filter (datos, Promedio > 0 & Carrera == "MECATRONICA")
mean(Mecatronica$Promedio)
## [1] 84.45948
## [1] 84.45948
median(Mecatronica$Promedio)
## [1] 84.085
## [1] 84.085
ggplot(Mecatronica, 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 Mecatronica",subtitle = paste("Media = ", round(mean(Mecatronica$Promedio),2), ", Mediana = ", round(median(Mecatronica$Promedio),2)))

#QUIMICA
Quimica <- filter (datos, Promedio > 0 & Carrera == "QUIMICA")
mean(Quimica$Promedio)
## [1] 86.05215
## [1] 86.05215
median(Quimica$Promedio)
## [1] 85.67
## [1] 85.67
ggplot(Quimica, 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 Quimica",subtitle = paste("Media = ", round(mean(Quimica$Promedio),2), ", Mediana = ", round(median(Quimica$Promedio),2)))

#SISTEMAS
Sistemas <- filter (datos, Promedio > 0 & Carrera == "SISTEMAS")
mean(Sistemas$Promedio)
## [1] 85.90464
## [1] 85.90464
median(Sistemas$Promedio)
## [1] 85.34
## [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)))

#TIC
Tic <- filter (datos, Promedio > 0 & Carrera == "TIC")
mean(Tic$Promedio)
## [1] 84.31719
## [1] 84.31719
median(Tic$Promedio)
## [1] 83.24
## [1] 83.24
ggplot(Tic, 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 Tic",subtitle = paste("Media = ", round(mean(Tic$Promedio),2), ", Mediana = ", round(median(Tic$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 = "Dispersion de Promedio de Administracion", subtitle = paste("Varianza = ", round(var(Administracion$Promedio),2), ", DesvStd = ", round(sd(Administracion$Promedio),2)))

#ARQUITECTURA
n <- nrow(Arquitectura)
ggplot(Arquitectura, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Arquitectura", subtitle = paste("Varianza = ", round(var(Arquitectura$Promedio),2), ", DesvStd = ", round(sd(Arquitectura$Promedio),2)))

#BIOQUIMICA
n <- nrow(Bioquimica)
ggplot(Bioquimica, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Bioquimica", subtitle = paste("Varianza = ", round(var(Bioquimica$Promedio),2), ", DesvStd = ", round(sd(Bioquimica$Promedio),2)))

#CIVIL
n <- nrow(Civil)
ggplot(Civil, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Civil", subtitle = paste("Varianza = ", round(var(Civil$Promedio),2), ", DesvStd = ", round(sd(Civil$Promedio),2)))

#ELECTRICA
n <- nrow(Electrica)
ggplot(Electrica, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Electrica", subtitle = paste("Varianza = ", round(var(Electrica$Promedio),2), ", DesvStd = ", round(sd(Electrica$Promedio),2)))

#ELECTRONICA
n <- nrow(Electronica)
ggplot(Electronica, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Electronica", subtitle = paste("Varianza = ", round(var(Electronica$Promedio),2), ", DesvStd = ", round(sd(Electronica$Promedio),2)))

#GESTION EMPRESARIAL
n <- nrow(Gestion.Empresarial)
ggplot(Gestion.Empresarial, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Gestion.Empresarial", subtitle = paste("Varianza = ", round(var(Gestion.Empresarial$Promedio),2), ", DesvStd = ", round(sd(Gestion.Empresarial$Promedio),2)))

#INDUSTRIAL
n <- nrow(Industrial)
ggplot(Industrial, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Industrial", subtitle = paste("Varianza = ", round(var(Industrial$Promedio),2), ", DesvStd = ", round(sd(Industrial$Promedio),2)))

#INFORMATICA
n <- nrow(Informatica)
ggplot(Informatica, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Informatica", subtitle = paste("Varianza = ", round(var(Informatica$Promedio),2), ", DesvStd = ", round(sd(Informatica$Promedio),2)))

#MECANICA
n <- nrow(Mecanica)
ggplot(Mecanica, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Mecanica", subtitle = paste("Varianza = ", round(var(Mecanica$Promedio),2), ", DesvStd = ", round(sd(Mecanica$Promedio),2)))

#MECATRONICA
n <- nrow(Mecatronica)
ggplot(Mecatronica, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Mecatronica", subtitle = paste("Varianza = ", round(var(Mecatronica$Promedio),2), ", DesvStd = ", round(sd(Mecatronica$Promedio),2)))

#QUIMICA
n <- nrow(Quimica)
ggplot(Quimica, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Quimica", subtitle = paste("Varianza = ", round(var(Quimica$Promedio),2), ", DesvStd = ", round(sd(Quimica$Promedio),2)))

#SISTEMAS
n <- nrow(Sistemas)
ggplot(Sistemas, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Sistemas", subtitle = paste("Varianza = ", round(var(Sistemas$Promedio),2), ", DesvStd = ", round(sd(Sistemas$Promedio),2)))

#TIC
n <- nrow(Tic)
ggplot(Tic, aes(x = 1:n, y = Promedio)) +
geom_point() +
labs(title = "Dispersion de Promedio de Tic", subtitle = paste("Varianza = ", round(var(Tic$Promedio),2), ", DesvStd = ", round(sd(Tic$Promedio),2)))

#6. Determinar una tabla para todos los parámetros estadísticos solicitados.
Tabla.Final <- datos %>%
group_by (Carrera) %>%
summarise(n = n(), media = mean(Promedio), mediana = median(Promedio), varianza = var(Promedio), desviacion.std = sd(Promedio))
## `summarise()` ungrouping output (override with `.groups` argument)
Tabla.Final
## # A tibble: 14 x 6
## Carrera n media mediana varianza desviacion.std
## <chr> <int> <dbl> <dbl> <dbl> <dbl>
## 1 ADMINISTRACION 497 74.5 88.4 1125. 33.5
## 2 ARQUITECTURA 675 70.1 85.4 1163. 34.1
## 3 BIOQUIMICA 441 68.6 82.8 1126. 33.6
## 4 CIVIL 648 73.1 83.1 834. 28.9
## 5 ELECTRICA 280 60.7 81.8 1414. 37.6
## 6 ELECTRONICA 161 67.3 85.3 1324. 36.4
## 7 GESTION EMPRESARIAL 585 74.2 86.7 1013. 31.8
## 8 INDUSTRIAL 707 74.2 83.7 819. 28.6
## 9 INFORMATICA 101 60.6 83.6 1581. 39.8
## 10 MECANICA 301 61.7 80.7 1302. 36.1
## 11 MECATRONICA 432 70.8 83.4 981. 31.3
## 12 QUIMICA 568 72.6 84.6 996. 31.6
## 13 SISTEMAS 452 70.9 84.1 1081. 32.9
## 14 TIC 81 66.6 81.7 1209. 34.8
#8. Interpretacion.
#Con la base de datos creada podemos delimitar, por medio de la función filter(), determinados aspectos dentro de las tablas por las cuales esta compuesta la base de datos, en conjunción con la función gglpot(), podremos determinar de manera grafica los resultado de los aspectos seleccionados, en este caso se nos solicitan histogramas, donde se puedan apreciar la media y mediana del promedio de cada carrera, para ello nos apoyamos de las funciones mean(), y median() que nos permiten determinar estos resultados de un conjunto de datos, para luego con ggplot() crear nuevamente una grafica que cumpla con los requisitos que se nos dieron.