Calcule média e desvio padrão da idade e nível de interesse. As métricas contendo os valores calculados para idade e nível de interesse devem ser apresentadas de forma ordenada. Além de apresentar no relatório, os resultados devem ser salvos em um arquivo csv.
mean_idade <- mean(turma_fpcc2$idade)
sd_idade <- sd(turma_fpcc2$idade)
mean_interesse <- mean(turma_fpcc2$interesse)
sd_interesse <- sd(turma_fpcc2$interesse)
metricas <- c("Média de idades", "Desvio padrão das idades", "Média de Nível de Interesse", "Desvio padrão de nível de interesse")
valores <- c(mean_idade, sd_idade, mean_interesse, sd_interesse)
result <- data.frame(`Métrica` = metricas, Valor = valores)
resultSorted <- result[order(result$Valor),]
kable(resultSorted, caption = "Tabela 1 - Média e Desvio Padrão de Idade e Nível de interesse na pós-gradução, em ordem crescente.")%>%kable_styling()
| Métrica | Valor | |
|---|---|---|
| 4 | Desvio padrão de nível de interesse | 0.3844259 |
| 3 | Média de Nível de Interesse | 2.8275862 |
| 2 | Desvio padrão das idades | 4.9524836 |
| 1 | Média de idades | 25.7931034 |
write.csv(resultSorted, "result_sorted.csv")
Qual o curso com maior valor médio de idade? Discutir os resultados com base nos dados disponíveis em termos de representatividade.
c.cursos <- c("Mestrado", "Doutorado", "Aluno especial")
qtd.mestrado <- nrow(subset(turma_fpcc2, curso=="Mestrado"))
qtd.doutorado <- nrow(subset(turma_fpcc2, curso=="Doutorado"))
qtd.aluno_especial <- nrow(subset(turma_fpcc2, curso=="Aluno especial"))
c.qtds <- c(qtd.mestrado, qtd.doutorado, qtd.aluno_especial)
qtd.total <- nrow(turma_fpcc2)
percent.mestrado <- percent(qtd.mestrado/qtd.total)
percent.doutorado <- percent(qtd.doutorado/qtd.total)
percent.aluno_especial <- percent(qtd.aluno_especial/qtd.total)
c.percents <- c(percent.mestrado, percent.doutorado, percent.aluno_especial)
mean_mestrado <- mean(turma_fpcc2[turma_fpcc2$curso=="Mestrado",]$idade)
mean_doutorado <- mean(turma_fpcc2[turma_fpcc2$curso=="Doutorado",]$idade)
mean_aluno_especial <- mean(turma_fpcc2[turma_fpcc2$curso=="Aluno especial",]$idade)
c.means <- c(mean_mestrado, mean_doutorado, mean_aluno_especial)
df.medias.cursos <- data.frame("Cursos" = c.cursos, "Qtd" = c.qtds, "Percent." = c.percents, "Médias" = c.means)
kable(df.medias.cursos, caption = "Tabela 2 - Comparação das médias dos cursos com a representatividade.")%>%kable_styling()
| Cursos | Qtd | Percent. | Médias |
|---|---|---|---|
| Mestrado | 22 | 76% | 23.54545 |
| Doutorado | 4 | 14% | 30.25000 |
| Aluno especial | 3 | 10% | 36.33333 |
Como pode-se perceber pela tabela, se considerarmos “Alunos Especial” como curso, essa categoria possui maior valor médio de idade. Se considerarmos “Aluno Especial” como curso, “Doutorado” possui o maior valor médio de idade. No caso de Doutorado ser o curso com o maior valor médio de idade é até esperado, tendo em vista que se trata de um curso posterior ao mestrado, apesar de apenas 4 alunos em relação ao total não ser tão representativo. No caso de Aluno Especial ser o curso com maior valor médio de idade, não é possível tirar grandes conclusões tendo em vista que a quantidade de apenas 3 pessoas nessa categoria não trazer representatividade para a amostra.
Crie um gráfico que mostra a idade média para cada curso. Apresente o gráfico e discuta os resultados no relatório. O gráfico também deve ser salvo em uma imagem no formato png.
turma_fpcc2 %>%
group_by(curso) %>%
summarise(means_idade = mean(idade), .groups='drop') %>%
ggplot() +
aes(x=curso, y=means_idade) +
ggtitle("Gráfico 1 - Média de idades por curso") +
theme(plot.title = element_text(hjust = 0.5)) +
geom_col() +
geom_text(aes(label=sprintf("%0.1f", means_idade), vjust=-0.3)) +
xlab("Curso") +
ylab("Média de idades")
Como debatido na questão anterior, Aluno Especial possui a maior média de idade. Fica mais explícito isso na exibição gráfica, onde pode-se comparar de forma mais clara as diferenças de idade de cada categoria. Podemos perceber que a média de idade do mestrado para a de aluno especial se distanciam consideravelmente.
ggsave("means_idade.png")
Crie um gráfico que mostra o percentual de alunos para cada estado de origem. Apresente o gráfico e discuta os resultados no relatório. O gráfico também deve ser salvo em uma imagem no formato png.
turma_fpcc2 <- turma_fpcc2 %>%
mutate(uf = ifelse(uf == "Paraíba", "PB",
ifelse(uf == "Ceará", "CE",
ifelse(uf == "Santa Catarina", "SC", uf))))
turma_fpcc2 %>%
group_by(uf) %>%
summarise(percent_uf = n()*100/nrow(turma_fpcc2), .groups='drop') %>%
ggplot() +
aes(x=uf, y=percent_uf) +
ggtitle("Gráfico 2 - Percentual de alunos por estado") +
theme(plot.title = element_text(hjust = 0.5)) +
geom_col() +
geom_text(aes(label=paste(sprintf("%0.1f", percent_uf), "%"), vjust=-0.3)) +
xlab("Unidade Federativa") +
ylab("Quantidade de alunos (%)")
Podemos perceber que a Paraíba possui a maioria de alunos no mestrado, inclusive superando em muito todas as outras porcentagens. Isso é até esperado tendo em vista que o curso se localiza em uma cidade da Paraíba. Pode-se destacar também que existem apenas 3 estados fora do Nordeste, São Paulo, Distrito Federal e Santa Catarina. É interessante destacar também que São Paulo, mesmo sendo de fora do Nordeste possui a segunda maior representatividade, empatado com a Bahia. Talvez não por coincidência tendo em vista que são os estados mais populosos, do país e do Nordeste, respectivamente.
ggsave("percent_uf.png")
Compare a média de idade geral com a média dos top-5 e dos bottom-5. Além de apresentar e discutir os resultados no relatório, salvar em uma tabela (dataframe) com as médias em questão.
mean_geral <- mean(turma_fpcc2$idade)
mean_top_5 <- mean(top_n(turma_fpcc2, 5, idade)$idade)
mean_bottom_5 <- mean(top_n(turma_fpcc2, -5, idade)$idade)
df.means_top_bottom <- data.frame("Média Geral"=sprintf("%0.1f", mean_geral),
"Média Top 5"=sprintf("%0.1f", mean_top_5),
"Média Bottom 5"=sprintf("%0.1f", mean_bottom_5))
kable(df.means_top_bottom, caption = "Tabela 3 - Comparação da média geral com as médias dos Top 5 e Bottom 5.")%>%kable_styling()
| Média.Geral | Média.Top.5 | Média.Bottom.5 |
|---|---|---|
| 25.8 | 35.2 | 21.9 |
Pode-se perceber que a média geral se aproxima mais dos bottom 5 do que dos top 5, o que indica que existem mais pessoas com menor idade no curso.
Você acredita que existe uma relação entre idade e nível de interesse? Discuta.
ggplot(turma_fpcc2) +
aes(idade, interesse) +
ggtitle("Gráfico 3 - Relação entre idade e interesse") +
theme(plot.title = element_text(hjust = 0.5)) +
geom_point() +
xlab("Idade") +
ylab("Interesse")
Apesar de existirem mais pessoas de menor idade com menos interesse no curso, quando se analisa as pessoas com alto interesse, percebe-se que elas se distribuem quase que uniformemente. Isso pode se dar ao fato da maior representividade das pessoas de menos idade, entretanto, pelo gráfico analisado, não se pode identificar uma relação clara entre idade e nível de interesse.