Este script determina medidas de dispersión, rango, cuartiles, percentiles, varianza, desviación estándard y coeficiente de variacion. Se utiliza el conjunto de datos que son importados desde el servicio github.

El conjunto de alumnos se encuentra en la dirección: https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/practicas%20R/datos/alumnos%20simulados.csv

Importar los datos

alumnos <- read.csv("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/practicas%20R/datos/alumnos%20simulados.csv")
head(alumnos)
##   X matricula     carrera genero promedio edad  peso altura
## 1 1         1       CIVIL      M    83.83   20 74.29 174.29
## 2 2         2   ELECTRICA      M    86.64   21 77.86 177.86
## 3 3         3 INFORMATICA      F    83.11   20 58.94 158.94
## 4 4         4         TIC      F    91.53   23 62.30 162.30
## 5 5         5  BIOQUIMICA      M    87.14   21 78.11 178.11
## 6 6         6         TIC      F    83.16   20 62.59 162.59
tail(alumnos)
##         X matricula        carrera genero promedio edad  peso altura
## 4995 4995      4995    INFORMATICA      F    81.15   20 58.57 158.57
## 4996 4996      4996    ELECTRONICA      M    86.56   21 79.00 179.00
## 4997 4997      4997 ADMINISTRACION      M    89.40   22 82.37 182.37
## 4998 4998      4998    ELECTRONICA      M    83.60   20 81.20 181.20
## 4999 4999      4999 ADMINISTRACION      M    85.99   21 81.25 181.25
## 5000 5000      5000          CIVIL      M    86.59   21 83.42 183.42
# alumnos

Factorizando genero y carreras de alumnos

alumnos$genero <- factor(alumnos$genero)
alumnos$carrera <- factor(alumnos$carrera)

Estructura de alumnos

str(alumnos)
## 'data.frame':    5000 obs. of  8 variables:
##  $ X        : int  1 2 3 4 5 6 7 8 9 10 ...
##  $ matricula: int  1 2 3 4 5 6 7 8 9 10 ...
##  $ carrera  : Factor w/ 13 levels "ADMINISTRACION",..: 4 5 8 13 3 13 11 9 9 2 ...
##  $ genero   : Factor w/ 2 levels "F","M": 2 2 1 1 2 1 1 1 1 2 ...
##  $ promedio : num  83.8 86.6 83.1 91.5 87.1 ...
##  $ edad     : int  20 21 20 23 21 20 21 22 22 21 ...
##  $ peso     : num  74.3 77.9 58.9 62.3 78.1 ...
##  $ altura   : num  174 178 159 162 178 ...

resumen de los alumnos con summary()

summary(alumnos)
##        X          matricula            carrera     genero  
##  Min.   :   1   Min.   :   1   ARQUITECTURA: 421   F:2436  
##  1st Qu.:1251   1st Qu.:1251   QUIMICA     : 415   M:2564  
##  Median :2500   Median :2500   ELECTRICA   : 407           
##  Mean   :2500   Mean   :2500   ELECTRONICA : 403           
##  3rd Qu.:3750   3rd Qu.:3750   TIC         : 401           
##  Max.   :5000   Max.   :5000   SISTEMAS    : 397           
##                                (Other)     :2556           
##     promedio          edad         peso           altura     
##  Min.   :73.28   Min.   :17   Min.   :52.77   Min.   :152.8  
##  1st Qu.:83.68   1st Qu.:20   1st Qu.:60.05   1st Qu.:160.1  
##  Median :85.95   Median :21   Median :73.69   Median :173.7  
##  Mean   :85.99   Mean   :21   Mean   :70.24   Mean   :170.2  
##  3rd Qu.:88.42   3rd Qu.:22   3rd Qu.:80.10   3rd Qu.:180.1  
##  Max.   :99.20   Max.   :25   Max.   :91.46   Max.   :191.5  
## 

Determinando poblacion Hombres y Mujeres y su media en Peso y Altura

# install.packages("dplyr") # Instalarlo antes si se necesita no haberlo hecho
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
hombres <- filter(alumnos, genero == 'M')
mujeres <- filter(alumnos, genero == 'F')

print(paste("Cantidad de Hombres: ",nrow(hombres)))
## [1] "Cantidad de Hombres:  2564"
print(paste("Cantidad de Mujeres: ",nrow(mujeres)))
## [1] "Cantidad de Mujeres:  2436"
print(paste("Media de Peso en Hombres: ",round(mean(hombres$peso),2)))
## [1] "Media de Peso en Hombres:  79.97"
print(paste("Media de Peso en Mujeres: ",round(mean(mujeres$peso),2)))
## [1] "Media de Peso en Mujeres:  60"
print(paste("Media de Altura en Hombres: ",round(mean(hombres$altura),2)))
## [1] "Media de Altura en Hombres:  179.97"
print(paste("Media de Altura en Mujeres: ",round(mean(mujeres$altura),2)))
## [1] "Media de Altura en Mujeres:  160"

Determinando cuartiles de Pesos en Hombre y Mujeres

q25PesoH <- quantile(hombres$peso, 0.25)
q50PesoH <- quantile(hombres$peso, 0.50)
q75PesoH <- quantile(hombres$peso, 0.75)


print(paste("El cuartile 25% del peso de los hombres, ", "con valor de ", q25PesoH, " significa que a partir de ese valor, está el otro 75%"))
## [1] "El cuartile 25% del peso de los hombres,  con valor de  77.9  significa que a partir de ese valor, está el otro 75%"
print(paste("El cuartile 50% del peso de los hombres, ", "con valor de ", q50PesoH, " significa que a partir de ese valor, está el otro 50%"))
## [1] "El cuartile 50% del peso de los hombres,  con valor de  79.99  significa que a partir de ese valor, está el otro 50%"
print(paste("El cuartile 75% del peso de los hombres, ", "con valor de ", q75PesoH, " significa que a partir de ese valor, está el otro 25%"))
## [1] "El cuartile 75% del peso de los hombres,  con valor de  81.99  significa que a partir de ese valor, está el otro 25%"
q25PesoM <- quantile(hombres$peso, 0.25)
q50PesoM <- quantile(hombres$peso, 0.50)
q75PesoM <- quantile(hombres$peso, 0.75)



print(paste("El cuartile 25% del peso de las mujeres, ", "con valor de ", q25PesoM, " significa que a partir de ese valor, está el otro 75%"))
## [1] "El cuartile 25% del peso de las mujeres,  con valor de  77.9  significa que a partir de ese valor, está el otro 75%"
print(paste("El cuartile 50% del peso de las mujeres, ", "con valor de ", q50PesoM, " significa que a partir de ese valor, está el otro 50%"))
## [1] "El cuartile 50% del peso de las mujeres,  con valor de  79.99  significa que a partir de ese valor, está el otro 50%"
print(paste("El cuartile 75% del peso de las mujeres, ", "con valor de ", q75PesoM, " significa que a partir de ese valor, está el otro 25%"))
## [1] "El cuartile 75% del peso de las mujeres,  con valor de  81.99  significa que a partir de ese valor, está el otro 25%"

Determinando percentiles de alturas del hombres y mujeres al 10% y 90%

p10alturaH <- quantile(hombres$altura, 0.10)
p90alturaH <- quantile(hombres$altura, 0.90)

print(paste("El percentil 10% de la altura de los hombres, ", "con valor de ", p10alturaH, " significa que a partir de ese valor, está el otro 90%"))
## [1] "El percentil 10% de la altura de los hombres,  con valor de  175.95  significa que a partir de ese valor, está el otro 90%"
print(paste("El percentil 90% de la altura de los hombres, ", "con valor de ", p90alturaH, " significa que a partir de ese valor, está el otro 10%"))
## [1] "El percentil 90% de la altura de los hombres,  con valor de  184.03  significa que a partir de ese valor, está el otro 10%"
p10alturaM <- quantile(hombres$altura, 0.10)
p90alturaM <- quantile(hombres$altura, 0.90)

print(paste("El percentil 10% de la altura de las mujeres, ", "con valor de ", p10alturaM, " significa que a partir de ese valor, está el otro 90%"))
## [1] "El percentil 10% de la altura de las mujeres,  con valor de  175.95  significa que a partir de ese valor, está el otro 90%"
print(paste("El percentil 90% de la altura de las mujeres, ", "con valor de ", p90alturaM, " significa que a partir de ese valor, está el otro 10%"))
## [1] "El percentil 90% de la altura de las mujeres,  con valor de  184.03  significa que a partir de ese valor, está el otro 10%"

Determinando las media de tres carreras

# install.packages("dplyr") # Instalarlo antes si se necesita no haberlo hecho
library(dplyr)

quimica <- filter(alumnos, carrera == "QUIMICA")
bioquimica <- filter(alumnos, carrera == "BIOQUIMICA")
civil <- filter(alumnos, carrera == "CIVIL")

meanquimica <- round(mean(quimica$promedio),2)

meanbioquimica <- round(mean(bioquimica$promedio),2)

meancivil<- round(mean(civil$promedio), 2)

paste("La media del promedio de calificaciones de quimica es: ", meanquimica)
## [1] "La media del promedio de calificaciones de quimica es:  85.92"
paste("La media del promedio de calificaciones de buiquimica es:  ", meanbioquimica)
## [1] "La media del promedio de calificaciones de buiquimica es:   86.13"
paste("La media del promedio de calificaciones de civil es:  ", meancivil)
## [1] "La media del promedio de calificaciones de civil es:   85.81"

Determinando rango de promedio de calificaciones de tres carreras

limites <- range(quimica$promedio)
LI <- limites[1]
LS <- limites[2]
rango <- LS- LI
print(paste("El rango del promedio de calificaciones de la carrera de QUIMICA es: ", rango))
## [1] "El rango del promedio de calificaciones de la carrera de QUIMICA es:  20.16"
limites <- range(bioquimica$promedio)
LI <- limites[1]
LS <- limites[2]
rango <- LS- LI
print(paste("El rango del promedio de calificaciones de la carrera de BIOQUIMICA es: ", rango))
## [1] "El rango del promedio de calificaciones de la carrera de BIOQUIMICA es:  19.63"
limites <- range(civil$promedio)
LI <- limites[1]
LS <- limites[2]
rango <- LS- LI
print(paste("El rango del promedio de calificaciones de la carrera de CIVIL es: ", rango))
## [1] "El rango del promedio de calificaciones de la carrera de CIVIL es:  22.85"

Determinando el rango intercuartílico del poromedio de calificaciones de tres carreras

q1 <- quantile(bioquimica$promedio, 0.25)
q3 <- quantile(bioquimica$promedio, 0.75)
RIC <- round(q3 - q1, 2)
print(paste("El Rango Inter Cuartílico RIC del promedio de calificaciones de la carrera de BIOQUIMICA es: ", RIC))
## [1] "El Rango Inter Cuartílico RIC del promedio de calificaciones de la carrera de BIOQUIMICA es:  4.8"
q1 <- quantile(quimica$promedio, 0.25)
q3 <- quantile(quimica$promedio, 0.75)
RIC <- round(q3 - q1, 2)
print(paste("El Rango Inter Cuartílico RIC del promedio de calificaciones de la carrera de QUIMICA es: ", RIC))
## [1] "El Rango Inter Cuartílico RIC del promedio de calificaciones de la carrera de QUIMICA es:  4.72"
q1 <- quantile(civil$promedio, 0.25)
q3 <- quantile(civil$promedio, 0.75)
RIC <- round(q3 - q1, 2)
print(paste("El Rango Inter Cuartílico RIC del promedio de calificaciones de la carrera de CIVIL es: ", RIC))
## [1] "El Rango Inter Cuartílico RIC del promedio de calificaciones de la carrera de CIVIL es:  5.04"

Determinnado la varianza del promedio de calificaciones de tres carreas

varBioquimica <- round(var(bioquimica$promedio), 2)
print(paste("La varianza del promedio de calificaciones de la carrera de BIOQUIMICA es: ", varBioquimica))
## [1] "La varianza del promedio de calificaciones de la carrera de BIOQUIMICA es:  12.42"
varQuimica <- round(var(quimica$promedio),2)
print(paste("La varianza del promedio de calificaciones de la carrera de QUIMICA es: ", varQuimica))
## [1] "La varianza del promedio de calificaciones de la carrera de QUIMICA es:  13.14"
varCivil <- round(var(civil$promedio),2)
varQuimica <- var(quimica$promedio)
print(paste("La varianza del promedio de calificaciones de la carrera de CIVIL es: ", varCivil))
## [1] "La varianza del promedio de calificaciones de la carrera de CIVIL es:  13.76"

Determinando las desviaciones estándar de tres carreras

dsBioquimica <- round(sd(bioquimica$promedio), 2)
print(paste("La Desviación Estándard del promedio de calificaciones de la carrera de BIOQUIMICA es: ", dsBioquimica))
## [1] "La Desviación Estándard del promedio de calificaciones de la carrera de BIOQUIMICA es:  3.52"
dsQuimica <- round(sd(quimica$promedio), 2)
print(paste("La Desviación Estándard del promedio de calificaciones de la carrera de QUIMICA es: ", dsQuimica))
## [1] "La Desviación Estándard del promedio de calificaciones de la carrera de QUIMICA es:  3.63"
dsCivil <- round(sd(civil$promedio), 2)
print(paste("La Desviación Estándard del promedio de calificaciones de la carrera de CIVIL es: ", dsCivil))
## [1] "La Desviación Estándard del promedio de calificaciones de la carrera de CIVIL es:  3.71"

Determinando coeficiente de variación CV del promedio de calificaciones de tres carreras

CVBioquimica <- round(sd(bioquimica$promedio) / mean(bioquimica$promedio) * 100, 2)
print(paste("El coeficiente de variación CV del promedio de calificaciones de la carrera de BIOQUIMICA es: ", CVBioquimica, "%"))
## [1] "El coeficiente de variación CV del promedio de calificaciones de la carrera de BIOQUIMICA es:  4.09 %"
CVQuimica <- round(sd(quimica$promedio) / mean(quimica$promedio) * 100, 2)
print(paste("El coeficiente de variación CV del promedio de calificaciones de la carrera de QUIMICA es: ", CVQuimica, "%"))
## [1] "El coeficiente de variación CV del promedio de calificaciones de la carrera de QUIMICA es:  4.22 %"
CVCivil <- round(sd(civil$promedio) / mean(civil$promedio) * 100, 2)
print(paste("El coeficiente de variación CV del promedio de calificaciones de la carrera de CIVIL es: ", CVCivil, "%"))
## [1] "El coeficiente de variación CV del promedio de calificaciones de la carrera de CIVIL es:  4.32 %"
## [1] 4.32