FPCC2 - LaboratĂłrio 1

Com base no arquivo de dados (no diretório data) responda as questões abaixo, gerando um relatório final com as respostas. Cada resposta deve gerar tabelas e/ou gráficos para apresentar os resultados obtidos, além de uma justificativa para a escolha de métricas, estatísticas e visualizações. Vocês podem se basear no arquivo R Markdown gerado em sala (no diretório reports). O relatório final deve ser adicionado ao repositório do seu lab (por exemplo, um arquivo PDF)

QuestĂŁo 1

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.

ufs_nordeste <- c("CE", "RN", "PB", "PE", "BA", "SE", "AL", "PI", "MA")
ufs_sudeste <- c("ES", "MG", "RJ", "SP")

cc <- dff %>% filter(curso_busca == "Ciência da Computação")

cursos_nordeste <- cc %>%
  inner_join(estados, by = c("uf_busca" = "subdivision")) %>%
  filter(region == "NE") %>%
  summarise(id = "Nordeste",
            media = mean(mensalidade),
            mediana = median(mensalidade))

cursos_sudeste <- cc %>%
  inner_join(estados, by = c("uf_busca" = "subdivision")) %>%
  filter(region == "SE") %>%
  summarise(id = "Sudeste",
            media = mean(mensalidade),
            mediana = median(mensalidade))

compara_nordeste_sudeste <- rbind(cursos_nordeste, cursos_sudeste)
compara_nordeste_sudeste
## # A tibble: 2 Ă— 3
##   id       media mediana
##   <chr>    <dbl>   <dbl>
## 1 Nordeste  713.    743.
## 2 Sudeste   899.    779

Na minha opinião essa diferença em relação a média muito significativa, porque existe uma margem maior, já na mediana não é tão acentuada, embora seja minimamente significativa.

Para melhorar a visualização vou expôr a diferença em cada gráfico de barras, um para média e mediana.

compara_nordeste_sudeste %>%
  ggplot(aes(x = id, y = media, fill = id)) +
  geom_bar(stat = "identity", position = "dodge") +
  geom_text(aes(label = round(media, 2)), vjust = -0.5, size = 4) +
  labs(title = "Média das Mensalidades - Ciência da Computação",
       x = "Região", y = "Média das Mensalidades") +
  theme_minimal()

compara_nordeste_sudeste %>%
  ggplot(aes(x = id, y = mediana, fill = id)) +
  geom_bar(stat = "identity", position = "dodge") +
  geom_text(aes(label = round(mediana, 2)), vjust = -0.5, size = 4) +
  labs(title = "Mediana das Mensalidades - Ciência da Computação",
       x = "RegiĂŁo", y = "Mediana das Mensalidades") +
  scale_fill_manual(values = c("Nordeste" = "blue", "Sudeste" = "red")) +
  theme_minimal()

QuestĂŁo 2

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.

top_10_cursos <- dff %>%
  group_by(curso_busca) %>%
  summarise(total_mensalidade = sum(mensalidade, na.rm = TRUE),
            total_bolsas = sum(bolsa_integral_cotas, na.rm = TRUE) +
              sum(bolsa_integral_ampla, na.rm = TRUE) +
              sum(bolsa_parcial_cotas, na.rm = TRUE) +
              sum(bolsa_parcial_ampla, na.rm = TRUE)) %>%
  top_n(10, total_mensalidade)

top_10_cursos <- top_10_cursos %>%
  arrange(desc(total_mensalidade))

top_10_cursos
## # A tibble: 10 Ă— 3
##    curso_busca            total_mensalidade total_bolsas
##    <chr>                              <dbl>        <dbl>
##  1 Administração                   1495415.        20761
##  2 Direito                         1234376.        14678
##  3 Engenharia Civil                1028389.         9442
##  4 Ciências Contábeis              1014847.        13145
##  5 Educação Física                  963784.        10914
##  6 Pedagogia                        945726.        19448
##  7 Enfermagem                       904352.        10302
##  8 Medicina                         888874.         1177
##  9 Psicologia                       732045.         6779
## 10 Engenharia de Produção           727006.         5946

Estamos listando os top 10 cursos com maior valor de mensalidade, considerando o total de bolsas pelos diferentes tipos. Então pensamos em ordená-los de forma decrescente com base no valor total de mensalidades.

Para melhor determinarmos se há uma relação entre o valor total de mensalidade e o total de bolsas por curso, pensamos em realizar uma análise visual utilizando um gráfico de dispersão. Desse jeito nos ajudará a identificar os possíveis padrões ou tendências entre essas variáveis.

ggplot(top_10_cursos, aes(x = total_bolsas, y = total_mensalidade)) +
  geom_point() +
  geom_text(aes(label = curso_busca), hjust = 1, vjust = 1) +
  labs(title = "Relação entre Valor Total de Mensalidade e Total de Bolsas por Curso",
       x = "Total de Bolsas",
       y = "Valor Total de Mensalidade") +
  theme_minimal()

Podemos observar que a dispersão dos pontos no gráfico estão dispersos sem seguir um padrão definido, e isto nos aporta que a relação é menos significativa.

QuestĂŁo 3

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?

cursos_paraiba <- dff %>%
  filter(grau == "TecnolĂłgico" & uf_busca == "PB") %>%
  group_by(curso_busca) %>%
  summarise(bolsa_integral_cotas = sum(bolsa_integral_cotas, na.rm = TRUE),
            bolsa_integral_ampla = sum(bolsa_integral_ampla, na.rm = TRUE),
            bolsa_parcial_cotas = sum(bolsa_parcial_cotas, na.rm = TRUE),
            bolsa_parcial_ampla = sum(bolsa_parcial_ampla, na.rm = TRUE))

cursos_paraiba <- cursos_paraiba %>%
  mutate(total_bolsas = bolsa_integral_cotas + bolsa_integral_ampla +
             bolsa_parcial_cotas + bolsa_parcial_ampla) %>%
  arrange(desc(total_bolsas))

cursos_paraiba
## # A tibble: 34 Ă— 6
##    curso_busca     bolsa_integral_cotas bolsa_integral_ampla bolsa_parcial_cotas
##    <chr>                          <dbl>                <dbl>               <dbl>
##  1 Gestão de Recu…                   31                   20                   3
##  2 Segurança no T…                   11                    7                   1
##  3 Redes de Compu…                   16                   10                   0
##  4 Gestão da Tecn…                   12                    6                   1
##  5 Negócios Imobi…                    6                    4                   0
##  6 LogĂ­stica                          9                    3                   1
##  7 Design de Inte…                   13                   10                   0
##  8 Radiologia                        12                   30                   1
##  9 Gestão Comerci…                   14                    5                   5
## 10 Marketing                         15                    8                   4
## # ℹ 24 more rows
## # ℹ 2 more variables: bolsa_parcial_ampla <dbl>, total_bolsas <dbl>

Nesta tabela temos os cursos tecnolĂłgicos da ParaĂ­ba que oferecem mais bolsas de estudo, especificando a quantidade de bolsas de cada tipo (integral e parcial, cotas e ampla concorrĂŞncia) que esses cursos oferecem. Ordenamos os cursos em ordem decrescente com base no total de bolsas.

Esta nossa tabela mostrará o nome do curso, seguido pelo número de bolsas integrais por cotas, bolsas integrais por ampla concorrência, bolsas parciais por cotas e bolsas parciais por ampla concorrência. Para terminar exibirmos o total de bolsas oferecidas por cada curso.

cursos_paraiba %>%
  ggplot(aes(x = curso_busca, y = total_bolsas)) +
  geom_bar(stat = "identity", fill = "steelblue") +
  labs(title = "Total de Bolsas de Estudo por Curso TecnolĂłgico - ParaĂ­ba",
       x = "Curso", y = "Total de Bolsas") +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 90, hjust = 1))

Escolhemos gerar um gráfico de barras para mostrar o total de bolsas de estudo por curso tecnológico na Paraíba, os cursos serão exibidos no eixo x, e a altura das barras representará o total de bolsas oferecidas. Desse jeito porque temos muitos curso de outra maneira seria menos eficiente a visualização.

QuestĂŁo 4

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?

Vimos a necessidade de uma tabela com os cursos de Ciência da Computação, Engenharia da Computação e Sistemas de Informação, juntamente com as respectivas modalidades e o percentual de bolsas ofertadas em cada modalidade.

Para podermos determinar se existe uma modalidade predominante, podemos observar o maior percentual de bolsas em cada curso e verificar se alguma modalidade possui uma proporção significativamente maior em relação às outras, isso pode ser avaliado visualmente em um gráfico de barras ou por meio de cálculos de diferenças percentuais.

cursos_interesse <- c("Ciência da Computação", "Engenharia da Computação", "Sistemas de Informação")

cursos_modalidades <- dff %>%
  filter(curso_busca %in% cursos_interesse) %>%
  group_by(curso_busca, turno) %>%
  summarise(total_bolsas = sum(bolsa_integral_cotas, na.rm = TRUE) +
                         sum(bolsa_integral_ampla, na.rm = TRUE) +
                         sum(bolsa_parcial_cotas, na.rm = TRUE) +
                         sum(bolsa_parcial_ampla, na.rm = TRUE)) %>%
  mutate(percentual = (total_bolsas / sum(total_bolsas)) * 100)
## `summarise()` has grouped output by 'curso_busca'. You can override using the
## `.groups` argument.
cursos_modalidades
## # A tibble: 11 Ă— 4
## # Groups:   curso_busca [3]
##    curso_busca              turno             total_bolsas percentual
##    <chr>                    <chr>                    <dbl>      <dbl>
##  1 Ciência da Computação    Integral                    20       1.26
##  2 Ciência da Computação    Matutino                   384      24.2 
##  3 Ciência da Computação    Noturno                   1169      73.5 
##  4 Ciência da Computação    Vespertino                  17       1.07
##  5 Engenharia da Computação Integral                    22      18.2 
##  6 Engenharia da Computação Matutino                    19      15.7 
##  7 Engenharia da Computação Noturno                     80      66.1 
##  8 Sistemas de Informação   Curso a Distância           95       4.94
##  9 Sistemas de Informação   Matutino                   260      13.5 
## 10 Sistemas de Informação   Noturno                   1514      78.6 
## 11 Sistemas de Informação   Vespertino                  56       2.91

Para melhor exibição desses dados, decidimos criar o gráfico de barras empilhadas que mostra o percentual de bolsas ofertadas por modalidade em cada um dos cursos de Ciência da Computação, Engenharia da Computação e Sistemas de Informação. Cada barra representa um curso, e as diferentes cores representam as modalidades.

cursos_modalidades %>%
  ggplot(aes(x = curso_busca, y = percentual, fill = turno)) +
  geom_bar(stat = "identity") +
  labs(title = "Percentual de Bolsas Ofertadas por Modalidade - Cursos de TI",
       x = "Curso", y = "Percentual de Bolsas") +
  theme_minimal() +
  scale_fill_brewer(palette = "Set3") +
  theme(axis.text.x = element_text(angle = 90, hjust = 1),
        legend.position = "right")