Histograma e box plot geral

## Grafico geral das notas
breaks <- 0:10
## table(cut(notas$S1, breaks = breaks,
##           right = FALSE, include.lowest = TRUE))
## Junta notas de todas as sabatinas em um único vetor
notas.all <- do.call(c, notas[, notas.col, drop = FALSE])
hist(notas.all, breaks = breaks, right = FALSE, include.lowest = TRUE,
     main = "Notas gerais", xlab = "Notas", ylab = "Frequência absoluta")

## boxplot(notas.all, horizontal = TRUE, ylim = c(0, 10),
##         col = "lightgray", add = TRUE, at = 1)

Resumo dos cinco números, média, desvio-padrão, e número de provas não realizadas (NA):

statm <- function(x){
    res <- c(fivenum(x),
             mean(x, na.rm = TRUE),
             sd(x, na.rm = TRUE),
             sum(is.na(x)))
    names(res) <- c("Min", "Q1", "Q2", "Q3", "Max", "Média", "s", "NAs")
    return(res)
}
round(statm(notas.all), 2)
  Min    Q1    Q2    Q3   Max Média     s   NAs 
 0.00  5.30  7.10  8.00 10.00  6.60  2.23 50.00 

Resumos por prova

Box plot de cada prova

## Boxplots comparando as notas entre sabatinas
boxplot(notas[, notas.col], ylim = c(0, 10), ylab = "Notas")

Resumo dos cinco números, média, desvio-padrão, e número de provas não realizadas (NA):

round(apply(notas[, notas.col, drop = FALSE], 2, statm), 2)
         P1    P2    P3
Min    1.81  0.00  0.31
Q1     5.58  5.88  4.83
Q2     7.24  7.08  6.93
Q3     8.29  8.04  7.87
Max   10.00  8.93  9.50
Média  6.80  6.60  6.35
s      2.41  2.09  2.20
NAs   13.00 17.00 20.00

Notas individuais

Na tabela abaixo estão as notas das 3 provas realizadas. A frequência (F) é o percentual de presença.

A média (M) foi calculada com estas 3 notas, e já arredondada para cima nos seguintes casos:

Observação: a frequência só foi utilizada aqui para critério de arredondamento de nota. Mesmo que o aluno tenha frequência abaixo de 75%, é permitido fazer o exame.

A coluna de situação (S) indica se o aluno foi aprovado (Ap), ficou em exame (Ex), ou foi reprovado (Re).

Após o exame: as notas dos exames estão na coluna E. A média final (MF) é a mesma para quem não fez exame, e é a média entre a média final (M) e a nota do exame (E) para quem fez exame. A média final arredondada (MFA) é a nota que será lançada no sistema. A coluna SF mostra a situação final dos alunos após o exame.

##----------------------------------------------------------------------
## Após exame (Ex)

## Insere notas do exame
notas2$E <- notas$E

## Calcula média final (MF), que é média da nota final com a nota do
## exame (apenas para os que ficaram de exame)
notas2$MF <- notas2$M
notas2$MF[notas2$S == "Ex"] <- (notas2$M[notas2$S == "Ex"] +
    notas2$E[notas2$S == "Ex"])/2
notas2$MF <- round(notas2$MF, 2)

## Calcula a média final arredonadada (MFA), que é a média multiplicada por
## 10 e arredondada para cima (é como será lançada no sistema)
notas2$MFA <- ceiling(notas2$MF*10)

## Cria a coluna Situacao final (SF), que indica a situação após exame
notas2$SF <- "Ap"
notas2$SF[notas2$MFA < 50] <- "Re"

## Mostra tabela
kable(notas2, align = "c", digits = 2)
Matricula P1 P2 P3 M F S E MF MFA SF
20149114 NA 3.15 NA 1.05 75 Re NA 1.05 11 Re
20159136 7.28 5.08 7.95 7.00 87 Ap NA 7.00 70 Ap
20159322 4.60 7.01 4.50 5.37 84 Ex 1.83 3.60 36 Re
20159350 NA NA NA 0.00 75 Re NA 0.00 0 Re
20159352 NA NA NA 0.00 0 Re NA 0.00 0 Re
20159393 NA NA NA 0.00 56 Re NA 0.00 0 Re
20159409 10.00 NA NA 3.33 0 Re NA 3.33 34 Re
20159417 4.27 5.29 4.23 4.60 90 Ex 2.75 3.67 37 Re
20159775 7.02 6.20 3.99 5.74 94 Ex 0.00 2.87 29 Re
20159826 6.83 6.97 4.92 6.24 94 Ex 5.54 5.89 59 Ap
20159858 7.37 4.08 2.73 4.73 87 Ex 3.94 4.34 44 Re
20159999 NA NA NA 0.00 77 Re NA 0.00 0 Re
20160023 9.17 5.03 9.23 7.81 84 Ap NA 7.81 79 Ap
20160194 5.54 7.25 8.20 7.00 90 Ap NA 7.00 70 Ap
20160203 7.89 5.72 6.39 7.00 94 Ap NA 7.00 70 Ap
20160204 5.62 8.33 6.58 7.00 100 Ap NA 7.00 70 Ap
20160205 3.11 NA NA 1.04 84 Re NA 1.04 11 Re
20160206 10.00 7.48 9.08 8.85 94 Ap NA 8.85 89 Ap
20160208 7.14 7.80 7.10 7.35 100 Ap NA 7.35 74 Ap
20160209 NA NA NA 0.00 0 Re NA 0.00 0 Re
20160210 9.98 8.62 5.78 8.12 90 Ap NA 8.12 82 Ap
20160211 6.62 3.83 NA 3.48 100 Re NA 3.48 35 Re
20160212 NA NA NA 0.00 52 Re NA 0.00 0 Re
20160213 7.24 8.65 7.78 7.89 90 Ap NA 7.89 79 Ap
20160214 1.81 8.07 3.61 4.50 94 Ex 3.06 3.78 38 Re
20160215 5.10 6.97 7.43 7.00 100 Ap NA 7.00 70 Ap
20160216 6.66 8.49 7.03 7.39 94 Ap NA 7.39 74 Ap
20160217 10.00 7.59 9.08 8.89 84 Ap NA 8.89 89 Ap
20160218 6.05 6.47 5.30 5.94 90 Ex 3.43 4.69 47 Re
20160219 9.98 8.54 9.50 9.34 100 Ap NA 9.34 94 Ap
20160220 9.42 7.95 7.14 8.17 75 Ap NA 8.17 82 Ap
20160221 7.14 7.08 8.20 7.47 94 Ap NA 7.47 75 Ap
20160222 3.15 6.17 5.46 4.92 87 Ex 5.72 5.32 54 Ap
20160223 7.58 8.74 6.29 7.54 90 Ap NA 7.54 76 Ap
20160224 9.27 NA NA 3.09 90 Re NA 3.09 31 Re
20160225 7.45 6.03 7.52 7.00 90 Ap NA 7.00 70 Ap
20160226 7.10 7.53 8.20 7.61 100 Ap NA 7.61 77 Ap
20160227 1.81 0.50 1.31 1.21 94 Re NA 1.21 13 Re
20160228 NA NA NA 0.00 58 Re NA 0.00 0 Re
20160229 3.48 0.00 0.31 1.26 97 Re NA 1.26 13 Re
20160230 7.70 7.10 7.71 7.50 97 Ap NA 7.50 75 Ap
20160231 8.84 8.00 6.84 7.89 97 Ap NA 7.89 79 Ap
20160232 1.87 NA NA 0.62 58 Re NA 0.62 7 Re
20160233 2.20 4.90 NA 2.37 100 Re NA 2.37 24 Re
20160234 7.62 NA NA 2.54 65 Re NA 2.54 26 Re
20160235 6.87 8.51 7.76 7.71 94 Ap NA 7.71 78 Ap
20160236 NA NA NA 0.00 52 Re NA 0.00 0 Re
20160237 7.85 8.22 7.21 7.76 97 Ap NA 7.76 78 Ap
20160238 8.69 8.93 8.88 8.83 87 Ap NA 8.83 89 Ap
20160239 9.71 8.00 6.39 8.03 87 Ap NA 8.03 81 Ap
20160240 7.43 6.20 4.41 6.01 97 Ex 3.44 4.73 48 Re
20160242 7.74 6.80 4.73 6.42 90 Ex 7.11 6.77 68 Ap
20160304 NA NA NA 0.00 61 Re NA 0.00 0 Re
20162949 NA NA NA 0.00 52 Re NA 0.00 0 Re
20165725 NA NA NA 0.00 0 Re NA 0.00 0 Re
20165740 NA NA NA 0.00 52 Re NA 0.00 0 Re

Número de alunos em cada situação:

addmargins(table(notas2$S))

 Ap  Ex  Re Sum 
 24  10  22  56 
addmargins(table(notas2$SF))

 Ap  Re Sum 
 27  29  56 

Gráfico de barras com os percentuais por situação:

par(mfrow = c(1, 2))
barplot(prop.table(table(notas2$S))*100,
        xlab = "Situação", ylab = "Frequência (%)",
        main = "Antes do exame")
barplot(prop.table(table(notas2$SF))*100,
        xlab = "Situação", ylab = "Frequência (%)",
        main = "Após o exame")
par(mfrow = c(1, 1))


Licença Creative Commons 4.0

Este conteúdo está disponível por meio da Licença Creative Commons 4.0