Q1 - Qual a diferença entre as mensalidades médias e medianas dos cursos de Ciência da Computação do Nordeste e Sudeste? Na sua opnião, essa diferença é estatisticamente significativa? Justifique.

Gráfico comparando a média e mediana por estado das regiões NE e SE:

# Filtrando os UFs dos estados da região NE e SE
dp_states <- states %>%
  filter(region == "NE" | region == "SE") %>%
  filter(is.na(extinction) & category == "State") %>%
  select(subdivision)


dp_q1 <- dataset %>%
  filter(uf_busca %in% dp_states$subdivision) %>%
  group_by(uf_busca) %>% 
  summarise(mens_media = mean(mensalidade),
            mens_median = median(mensalidade),
            diferenca = abs(mean(mensalidade) - median(mensalidade)),
            media_percentil = (sum(mensalidade <= mens_media)/n()) * 100) %>%
  arrange(desc(media_percentil))
  
ggplot(dp_q1, aes(x = reorder(uf_busca, diferenca))) + 
    geom_bar(aes(y=mens_media, fill ="#99ccff"),stat="identity",position="dodge") +  
    geom_bar(aes(y=mens_median, fill="#3399ff"),stat="identity",position="dodge") +
    scale_fill_identity(name = 'Legenda', guide = 'legend',labels = c('Mediana', 'Média')) +
    labs(title = "Comparativo entre a média e a mediana", 
      y = "Média vs mediana da mensalidade", x = "Estados")

Calculando o percentil da média, poderemos comparar com a mediana que é o 50-percentil.

Percentil da média para cada estado:

dp_q1
## # A tibble: 13 × 5
##    uf_busca mens_media mens_median diferenca media_percentil
##    <chr>         <dbl>       <dbl>     <dbl>           <dbl>
##  1 RJ             745.        349.     396.             67.9
##  2 SP             591.        439      152.             63.5
##  3 MG             669.        403.     266.             63.4
##  4 RN             680.        552.     128.             61.7
##  5 PE             635.        511.     124.             61.6
##  6 AL             534.        403.     131.             61.5
##  7 ES             621.        418.     203.             61.0
##  8 CE             802.        675.     127.             59.9
##  9 PI             630.        531.      98.6            59.8
## 10 PB             697.        514.     183.             59.7
## 11 BA             640.        451      189.             59.6
## 12 MA             729.        588.     141.             57.9
## 13 SE             642.        588       54.1            55.7

E, por fim, um sumário de estatísticas para os percentis das médias:

summary(dp_q1$media_percentil)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   55.73   59.73   60.97   61.01   61.70   67.89

O valor mínimo de percentil de média é 55,73% e o máximo é 67,89%, e considerando a média desses valores que é 61,01%, isso representa uma diferença de 11,01% para a mediana o que pode indicar que a diferença entre média e mediana é significativa, mesmo quando considerado o valor mínimo.

Q2 - Quais são os top 10 cursos com maior valor de mensalidade pelo total de bolsas (diferentes tipos)? Existe uma relação entre o valor total de mensalidade e o total de bolsas por curso? Justifique.

dp_q2 <- dataset %>%
          select(curso_busca, mensalidade, bolsa_integral_cotas, bolsa_integral_ampla, bolsa_parcial_cotas, bolsa_parcial_ampla) %>%
          group_by(curso_busca) %>%
          summarise(
            max_mensalidade = max(mensalidade), 
            total_integral_cotas = sum(bolsa_integral_cotas, na.rm = TRUE),
            total_integral_ampla = sum(bolsa_integral_ampla, na.rm = TRUE),
            total_parcial_cotas = sum(bolsa_parcial_cotas, na.rm = TRUE),
            total_parcial_ampla = sum(bolsa_parcial_ampla, na.rm = TRUE)) %>%
          mutate(total_bolsas = rowSums(across(c(total_integral_cotas, total_integral_ampla, total_parcial_cotas, total_parcial_ampla)))) %>%
          select(curso_busca, max_mensalidade, total_bolsas) %>%
          arrange(desc(total_bolsas), desc(max_mensalidade))

head(dp_q2, 10)
## # A tibble: 10 × 3
##    curso_busca                max_mensalidade total_bolsas
##    <chr>                                <dbl>        <dbl>
##  1 Administração                        6553.        20761
##  2 Pedagogia                            3282         19448
##  3 Direito                              7718.        14678
##  4 Ciências Contábeis                   5801.        13145
##  5 Educação Física                      8467.        10914
##  6 Enfermagem                           9836.        10302
##  7 Engenharia Civil                     6180          9442
##  8 Psicologia                           9689.         6779
##  9 Gestão de Recursos Humanos           3408.         6665
## 10 Engenharia de Produção               7360.         5946

Correlação entre total de bolsas e mensalidade máxima

cor(dp_q2$max_mensalidade, dp_q2$total_bolsas,  method = "pearson")
## [1] 0.6067392

A correlação entre total de bolsas e mensalidade máxima é de 0.61 aproximadamente, o que indica ter uma correlação entre as duas variáveis e essa correlação é moderada.

Q3 - Quais são os cursos tecnológicos da Paraíba que oferecem mais bolsas de estudo e quantas bolsas de cada tipo estes cursos oferecem?

Total de cursos tecnológicos da Paraíba:

dp_q3 <- dataset %>%
        filter(uf_busca == "PB" & grau == "Tecnológico") %>%
        group_by(curso_busca) %>%
        summarise(
          total_integral_cotas = sum(bolsa_integral_cotas, na.rm = TRUE),
          total_integral_ampla = sum(bolsa_integral_ampla, na.rm = TRUE),
          total_parcial_cotas = sum(bolsa_parcial_cotas, na.rm = TRUE),
          total_parcial_ampla = sum(bolsa_parcial_ampla, na.rm = TRUE)) %>%
          mutate(total_bolsas = rowSums(across(c(total_integral_cotas, total_integral_ampla, total_parcial_cotas, total_parcial_ampla)))) %>%
          select(curso_busca, total_bolsas, total_integral_cotas, total_integral_ampla, total_parcial_cotas, total_parcial_ampla) %>%
          arrange(desc(total_bolsas))

Quantidade de cursos tecnológicos da Paraíba:

count(dp_q3)
## # A tibble: 1 × 1
##       n
##   <int>
## 1    34

Top 5 de cursos tecnológicos da Paraíba com mais bolsas e essa quantidade de bolsas divididas pelo tipo:

head(dp_q3, 5)
## # A tibble: 5 × 6
##   curso_busca             total_bolsas total_integral_cotas total_integral_ampla
##   <chr>                          <dbl>                <dbl>                <dbl>
## 1 Gestão de Recursos Hum…          124                   31                   20
## 2 Segurança no Trabalho            110                   11                    7
## 3 Redes de Computadores            106                   16                   10
## 4 Gestão da Tecnologia d…           99                   12                    6
## 5 Negócios Imobiliários             95                    6                    4
## # ℹ 2 more variables: total_parcial_cotas <dbl>, total_parcial_ampla <dbl>

Q4 - Considerando os cursos de Ciência da Computação, Engenharia da Computação e Sistemas de Informação, qual o percentual de bolsas ofertadas para cada modalidade (a distância, integral, noturno, etc.) por cada um dos cursos? Existe uma modalidade que é predominante?

dp_q4 <- dataset %>%
        filter(curso_busca %in% c("Ciência da Computação", "Engenharia da Computação", "Sistemas de Informação")) %>%
        group_by(curso_busca, turno) %>%
        summarise(
          total_integral_cotas = sum(bolsa_integral_cotas, na.rm = TRUE),
          total_integral_ampla = sum(bolsa_integral_ampla, na.rm = TRUE),
          total_parcial_cotas = sum(bolsa_parcial_cotas, na.rm = TRUE),
          total_parcial_ampla = sum(bolsa_parcial_ampla, na.rm = TRUE)) %>%
         mutate(total_bolsas_turno = rowSums(across(c(total_integral_cotas, total_integral_ampla, total_parcial_cotas, total_parcial_ampla))), total_bolsas_curso = sum(total_bolsas_turno), porcentagem = (total_bolsas_turno/total_bolsas_curso) * 100) %>%
        select(curso_busca, turno, total_bolsas_curso, total_bolsas_turno, porcentagem)

dp_q4
## # A tibble: 11 × 5
## # Groups:   curso_busca [3]
##    curso_busca           turno total_bolsas_curso total_bolsas_turno porcentagem
##    <chr>                 <chr>              <dbl>              <dbl>       <dbl>
##  1 Ciência da Computação Inte…               1590                 20        1.26
##  2 Ciência da Computação Matu…               1590                384       24.2 
##  3 Ciência da Computação Notu…               1590               1169       73.5 
##  4 Ciência da Computação Vesp…               1590                 17        1.07
##  5 Engenharia da Comput… Inte…                121                 22       18.2 
##  6 Engenharia da Comput… Matu…                121                 19       15.7 
##  7 Engenharia da Comput… Notu…                121                 80       66.1 
##  8 Sistemas de Informaç… Curs…               1925                 95        4.94
##  9 Sistemas de Informaç… Matu…               1925                260       13.5 
## 10 Sistemas de Informaç… Notu…               1925               1514       78.6 
## 11 Sistemas de Informaç… Vesp…               1925                 56        2.91

Podemos ver na tabela acima o percentual de bolsas por cada modalidade de cada um dos cursos. Além disso, é notável que a modalidade noturna em todos os cursos possui os maiores percentuais de bolsas: Ciência da Computação tem 73,52% das bolsas na modalidade noturna, Engenharia da Computação tem 66,11% e Sistemas de Informação tem 78,65%.