#Objetivo
#* Determinar pendiente
#Descripcion
#* Cargar datos
promedios <- read.csv("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/practicas%20R/datos/alumnos.csv")
head(promedios)
## No..Control Semestre Cr..Apr. Carga Promedio
## 1 10040001 8 154 23 83.24
## 2 10040002 8 193 32 88.19
## 3 10040003 1 NA 27 0.00
## 4 10040004 2 22 28 82.40
## 5 10040005 5 77 28 81.59
## 6 10040006 1 NA 27 0.00
#Procedimiento
#* Pendiente
#Librerias a utilizar
# Cargar la librería previamente instalada
library(readr)
#Explorar los primeros y ultimos registros
head(promedios)
## No..Control Semestre Cr..Apr. Carga Promedio
## 1 10040001 8 154 23 83.24
## 2 10040002 8 193 32 88.19
## 3 10040003 1 NA 27 0.00
## 4 10040004 2 22 28 82.40
## 5 10040005 5 77 28 81.59
## 6 10040006 1 NA 27 0.00
tail(promedios)
## No..Control Semestre Cr..Apr. Carga Promedio
## 467 10040467 3 55 27 87.92
## 468 10040468 7 175 34 90.03
## 469 10040469 11 202 29 82.43
## 470 10040470 2 22 23 83.20
## 471 10040471 3 50 27 86.00
## 472 10040472 4 73 28 82.44
#Explorar promedios
str(promedios)
## 'data.frame': 472 obs. of 5 variables:
## $ No..Control: int 10040001 10040002 10040003 10040004 10040005 10040006 10040007 10040008 10040009 10040010 ...
## $ Semestre : int 8 8 1 2 5 1 2 1 3 1 ...
## $ Cr..Apr. : int 154 193 NA 22 77 NA 17 NA 50 NA ...
## $ Carga : int 23 32 27 28 28 27 28 27 27 27 ...
## $ Promedio : num 83.2 88.2 0 82.4 81.6 ...
summary(promedios)
## No..Control Semestre Cr..Apr. Carga
## Min. :10040001 Min. : 1.000 Min. : 0.0 Min. : 4.00
## 1st Qu.:10040119 1st Qu.: 2.000 1st Qu.: 54.0 1st Qu.:26.00
## Median :10040236 Median : 5.000 Median :105.0 Median :27.00
## Mean :10040236 Mean : 5.047 Mean :110.5 Mean :25.99
## 3rd Qu.:10040354 3rd Qu.: 7.000 3rd Qu.:166.0 3rd Qu.:28.00
## Max. :10040472 Max. :14.000 Max. :250.0 Max. :35.00
## NA's :79
## Promedio
## Min. : 0.00
## 1st Qu.:78.99
## Median :82.45
## Mean :69.94
## 3rd Qu.:86.22
## Max. :96.79
##
sum(promedios$Promedio) #Suma de variable Promedio
## [1] 33011.62
nrow(promedios) #N de registros de promedios
## [1] 472
#Depurar variables numericas a categorias o factores
promedios$No..Control <- as.factor(promedios$No..Control)
promedios$Semestre <- as.factor(promedios$Semestre)
str(promedios)
## 'data.frame': 472 obs. of 5 variables:
## $ No..Control: Factor w/ 472 levels "10040001","10040002",..: 1 2 3 4 5 6 7 8 9 10 ...
## $ Semestre : Factor w/ 14 levels "1","2","3","4",..: 8 8 1 2 5 1 2 1 3 1 ...
## $ Cr..Apr. : int 154 193 NA 22 77 NA 17 NA 50 NA ...
## $ Carga : int 23 32 27 28 28 27 28 27 27 27 ...
## $ Promedio : num 83.2 88.2 0 82.4 81.6 ...
summary(promedios)
## No..Control Semestre Cr..Apr. Carga Promedio
## 10040001: 1 1 : 77 Min. : 0.0 Min. : 4.00 Min. : 0.00
## 10040002: 1 2 : 67 1st Qu.: 54.0 1st Qu.:26.00 1st Qu.:78.99
## 10040003: 1 7 : 60 Median :105.0 Median :27.00 Median :82.45
## 10040004: 1 5 : 56 Mean :110.5 Mean :25.99 Mean :69.94
## 10040005: 1 3 : 47 3rd Qu.:166.0 3rd Qu.:28.00 3rd Qu.:86.22
## 10040006: 1 8 : 32 Max. :250.0 Max. :35.00 Max. :96.79
## (Other) :466 (Other):133 NA's :79
#Filtrar solo alumnos de segundo semestre en adelante
#* Se necesita los promedios de los alumnos que van en 2 semestre en adelante
#* Subconjunto de datos de los de semestre 2 en adelante por medio de la función subset()
#* Se determina la media con la función mean()
#promediosA2adela <- subset(promedios, Semestre > 1)
promediosA2adela <- subset(promedios, Semestre != '1')
promedioreal <- mean(promediosA2adela$Promedio)
print(round(promedioreal, 2))
## [1] 83.57
#Interpretacion
#* Hay alumnos de 1 a 14 semetre, los alumnos de semesre 1 no tienen promedio ni créditos aprobados
#* El promedio de todos los alumnos incluyendo aquellos que están en primer semestre y que aún no cuentan con promedio 69.94
#* El promedio de los alumnos de los que están en segundo semestre o posterior es de 83.57
This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.
When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:
summary(cars)
## speed dist
## Min. : 4.0 Min. : 2.00
## 1st Qu.:12.0 1st Qu.: 26.00
## Median :15.0 Median : 36.00
## Mean :15.4 Mean : 42.98
## 3rd Qu.:19.0 3rd Qu.: 56.00
## Max. :25.0 Max. :120.00
You can also embed plots, for example:
Note that the echo = FALSE
parameter was added to the code chunk to prevent printing of the R code that generated the plot.