library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(readr)
library(purrr)
#library(GGally)
#library(pscl)
library(broom)
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2
## ──
## ✔ ggplot2 3.4.0 ✔ stringr 1.5.0
## ✔ tibble 3.1.8 ✔ forcats 1.0.0
## ✔ tidyr 1.3.0
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
library(modelr)
##
## Attaching package: 'modelr'
##
## The following object is masked from 'package:broom':
##
## bootstrap
library(here)
## here() starts at D:/laryssa/mestrado/NiloPecanha/NiloPecanha-Laryssa
library(skimr)
library(gcookbook)
library(lubridate)
##
## Attaching package: 'lubridate'
##
## The following objects are masked from 'package:base':
##
## date, intersect, setdiff, union
library(rio)
dado_2017 <- read_csv2("2017-microdados-matriculas.csv")
## ℹ Using "','" as decimal and "'.'" as grouping mark. Use `read_delim()` for more control.
## Rows: 1031798 Columns: 25
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ";"
## chr (18): Cor / Raça, Dt Data Fim Previsto, Dt Data Inicio, Dt Ocorrencia Ma...
## dbl (7): Carga Horaria, Carga Horaria Minima, Co Ciclo Matricula, Co Matric...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
dado_2017 <- dado_2017 %>%
filter(`Tipo de Oferta`=="Integrado") %>%
filter(`Tipo de Curso`=="Técnico") %>%
filter(str_detect(`Instituição`, "^IF")) %>%
mutate(`Sg Sexo` = ifelse(`Sg Sexo`=="F", "Feminino", "Masculino"), ano = 2017) %>%
rename(Sexo=`Sg Sexo`)
dado_2018 <- read_csv2("2018-microdados-matriculas.csv")
## ℹ Using "','" as decimal and "'.'" as grouping mark. Use `read_delim()` for more control.
## Rows: 964593 Columns: 35── Column specification ────────────────────────────────────────────────────────
## Delimiter: ";"
## chr (25): Sexo, Renda Familiar, Cor / Raça, Faixa Etria, Data de Ocorrncia d...
## dbl (10): Idade, Cdigo da Matrcula, Cdigo do Ciclo Matrcula, Vagas Ofertadas...
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
dado_2018 <- dado_2018 %>% filter(`Tipo de Oferta`=="Integrado") %>%
filter(`Tipo de Curso`=="Técnico") %>%
filter(str_detect(`Instituição`, "^IF")) %>%
mutate(`Sexo` = ifelse(`Sexo`=="F", "Feminino", "Masculino"), ano = 2018) %>%
rename(Sexo=`Sexo`)
dado_2019 <- read_csv2("2019-microdados-matriculas.csv")
## ℹ Using "','" as decimal and "'.'" as grouping mark. Use `read_delim()` for more control.
## Rows: 1023303 Columns: 54── Column specification ────────────────────────────────────────────────────────
## Delimiter: ";"
## chr (23): Categoria da Situação, Cor / Raça, Data de Inicio do Ciclo, Data d...
## dbl (31): Teste, Carga Horaria, Carga Horaria Minima, Código do Ciclo Matric...
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
dado_2019 <- dado_2019 %>% filter(`Tipo de Oferta`=="Integrado")%>%
filter(`Tipo de Curso`=="Técnico") %>%
filter(str_detect(`Instituição`, "^IF")) %>%
select(-Teste) %>%
mutate(ano = 2019)
dado_2020 <- read_csv2("2020-microdados-matriculas.csv")
## ℹ Using "','" as decimal and "'.'" as grouping mark. Use `read_delim()` for more control.
## Rows: 1507476 Columns: 54── Column specification ────────────────────────────────────────────────────────
## Delimiter: ";"
## chr (24): Categoria de Situação, Cor/Raça, Data de Fim Previsto do Ciclo, Da...
## dbl (30): Carga Horaria, Carga Horaria Minima, Cod Unidade, Código da Matríc...
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
dado_2020 <- dado_2020 %>% filter(`Tipo de Oferta`=="Integrado") %>%
filter(`Tipo de Curso`=="Técnico") %>%
filter(str_detect(`Instituição`, "^IF")) %>%
mutate(Sexo = ifelse(Sexo=="F", "Feminino", "Masculino"), ano = 2020)
dado_2021 <- read_csv2("2021-microdados-matriculas.csv")
## ℹ Using "','" as decimal and "'.'" as grouping mark. Use `read_delim()` for more control.
## Rows: 1507476 Columns: 54── Column specification ────────────────────────────────────────────────────────
## Delimiter: ";"
## chr (24): Categoria de Situação, Cor/Raça, Data de Fim Previsto do Ciclo, Da...
## dbl (30): Carga Horaria, Carga Horaria Minima, Cod Unidade, Código da Matríc...
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
dado_2021 <- dado_2021 %>% filter(`Tipo de Oferta`=="Integrado") %>%
filter(`Tipo de Curso`=="Técnico") %>%
filter(str_detect(`Instituição`, "^IF")) %>%
mutate(Sexo = ifelse(Sexo=="F", "Feminino", "Masculino"), ano = 2021)
dado <- bind_rows(dado_2017, dado_2018, dado_2019, dado_2020, dado_2021)
print(dado)
## # A tibble: 1,155,254 × 91
## Carga Horar…¹ Carga…² Co Ci…³ Co Ma…⁴ Cor /…⁵ Dt Da…⁶ Dt Da…⁷ Dt Oc…⁸ Eixo …⁹
## <dbl> <dbl> <dbl> <dbl> <chr> <chr> <chr> <chr> <chr>
## 1 3750 1200 1943726 6.14e7 PARDA 30/06/… 10/03/… 01/03/… Infrae…
## 2 3750 1200 1943726 6.14e7 PARDA 30/06/… 10/03/… 01/03/… Infrae…
## 3 3750 1200 1943726 6.14e7 PARDA 30/06/… 10/03/… 01/03/… Infrae…
## 4 3750 1200 1943726 6.14e7 PARDA 30/06/… 10/03/… 01/03/… Infrae…
## 5 3750 1200 1943726 6.14e7 PARDA 30/06/… 10/03/… 01/03/… Infrae…
## 6 3750 1200 1943726 6.14e7 PARDA 30/06/… 10/03/… 01/03/… Infrae…
## 7 3750 1200 1943726 6.14e7 PARDA 30/06/… 10/03/… 01/03/… Infrae…
## 8 3750 1200 1943726 6.14e7 PARDA 30/06/… 10/03/… 01/03/… Infrae…
## 9 3500 1200 2151261 7.21e7 PARDA 31/12/… 02/03/… 01/03/… Recurs…
## 10 3500 1200 2151261 7.21e7 NO DEC… 31/12/… 02/03/… 01/03/… Recurs…
## # … with 1,155,244 more rows, 82 more variables: `Fator Esforco Curso` <dbl>,
## # `Mes De Ocorrencia` <chr>, `Modalidade Ensino` <chr>,
## # `Nome de Curso` <chr>, `Fonte de financiamento` <chr>,
## # `Renda Familiar` <chr>, Instituição <chr>, Sexo <chr>,
## # `Situação de Matrícula` <chr>, `Sub Eixo Tecnologico` <chr>,
## # `Tipo de Curso` <chr>, `Tipo de Oferta` <chr>, `Total Inscritos` <dbl>,
## # Turno <chr>, `Unidade Ensino` <chr>, `Vagas Ofertadas` <dbl>, ano <dbl>, …
Nesse momento foram realizados ajustes nos nomes dos cursos, pois tinha uma divergência entre a nomenclatura dos anos 2019 à 2021 em relação a 2017 e 2018; após o ajuste realizados apresentamos um gráfico mostrando a concentração feminina e masculina nos cursos selecionados entre os anos de 2017 à 2021.
unique(dado_2020$`Situação de Matrícula`)
## [1] "Concluída" "Em curso" "Evasão"
#unique(dado$`Eixo Tecnológico`)
#unique(dado$`Nome de Curso`)
#unique(dado$`Eixo Tecnológico`)
cursos_selcionados <- c("Técnico em Manutenção e Suporte em Informática", "Técnico em Informática")
dado_summary = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
group_by(ano) %>%
mutate(nalunos = n()) %>%
group_by(ano, Sexo) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100)
## `summarise()` has grouped output by 'ano'. You can override using the `.groups`
## argument.
print(dado_summary)
## # A tibble: 10 × 3
## # Groups: ano [5]
## ano Sexo percentual_por_sexo
## <dbl> <chr> <dbl>
## 1 2017 Feminino 37.8
## 2 2017 Masculino 62.2
## 3 2018 Feminino 38.5
## 4 2018 Masculino 61.5
## 5 2019 Feminino 39.8
## 6 2019 Masculino 60.2
## 7 2020 Feminino 41.1
## 8 2020 Masculino 58.9
## 9 2021 Feminino 41.1
## 10 2021 Masculino 58.9
p1 <- ggplot(dado_summary, aes(x = as.factor(ano), y = percentual_por_sexo, fill = Sexo)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de alunas e alunos nos cursos selecionados", x = "Anos correspondentes", y = "Percentual de alunos(as) %") +
geom_text(aes(label = format(round(percentual_por_sexo, 2), nsmall = 2)), vjust = 1.5, color = "black") +
coord_flip()
print(p1)
ggsave("dados_sexo_cursos.png", p1)
## Saving 7 x 5 in image
dado_teste = dado %>%
filter(`Nome de Curso`== "Técnico em Manutenção e Suporte em Informática") %>%
group_by(ano) %>%
mutate(nalunos = n()) %>%
group_by(ano, Sexo) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100)
## `summarise()` has grouped output by 'ano'. You can override using the `.groups`
## argument.
print(dado_teste)
## # A tibble: 10 × 3
## # Groups: ano [5]
## ano Sexo percentual_por_sexo
## <dbl> <chr> <dbl>
## 1 2017 Feminino 34.2
## 2 2017 Masculino 65.8
## 3 2018 Feminino 33.9
## 4 2018 Masculino 66.1
## 5 2019 Feminino 34.3
## 6 2019 Masculino 65.7
## 7 2020 Feminino 35.5
## 8 2020 Masculino 64.5
## 9 2021 Feminino 35.5
## 10 2021 Masculino 64.5
#ggsave("dados_sexo_ManutencaoESuporte.jpeg", dado_teste)
#export(dado_teste, file = "dados_sexo_ManutencaoESuporte.png")
p2 <- ggplot(dado_teste, aes(x = as.factor(ano), y = percentual_por_sexo, fill = Sexo)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual por sexo no curso de Técnico em Manutenção e Suporte em Informática", x = "Anos correspondentes", y = "Percentual de alunos(as) %") +
geom_text(aes(label = format(round(percentual_por_sexo, 2), nsmall = 2)), vjust = 1.5, color = "black") +
coord_flip()
print(p2)
ggsave("dados_sexo_ManutencaoESuporte.png", p2)
## Saving 7 x 5 in image
dado_teste1 = dado %>%
filter(`Nome de Curso`== "Técnico em Informática") %>%
group_by(ano) %>%
mutate(nalunos = n()) %>%
group_by(ano, Sexo) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100)
## `summarise()` has grouped output by 'ano'. You can override using the `.groups`
## argument.
print(dado_teste1)
## # A tibble: 10 × 3
## # Groups: ano [5]
## ano Sexo percentual_por_sexo
## <dbl> <chr> <dbl>
## 1 2017 Feminino 38.1
## 2 2017 Masculino 61.9
## 3 2018 Feminino 38.9
## 4 2018 Masculino 61.1
## 5 2019 Feminino 40.2
## 6 2019 Masculino 59.8
## 7 2020 Feminino 41.6
## 8 2020 Masculino 58.4
## 9 2021 Feminino 41.6
## 10 2021 Masculino 58.4
p3 <- ggplot(dado_teste1, aes(x = as.factor(ano), y = percentual_por_sexo, fill = Sexo)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual por sexo no curso de Técnico em Informática", x = "Anos correspondentes", y = "Percentual de alunos(as) %") +
geom_text(aes(label = format(round(percentual_por_sexo, 2), nsmall = 2)), vjust = 1.5, color = "black") +
coord_flip()
print(p3)
ggsave("dados_sexo_Infor.png", p3)
## Saving 7 x 5 in image
Analisando o percentual de meninas para os cursos base desse pesquisa.
cursos_selcionados <- c("Técnico em Manutenção e Suporte em Informática", "Técnico em Informática")
dado_summary = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(Sexo == "Feminino") %>%
group_by(ano) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Nome de Curso`) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100)
## `summarise()` has grouped output by 'ano'. You can override using the `.groups`
## argument.
p4 <- ggplot(dado_summary, aes(x = as.factor(ano), y = percentual_por_sexo, fill = `Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de alunas nos cursos selecionados", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = -0.2, color = "black", position = position_dodge(width = 0.9))
print(p4)
ggsave("dados_percentual_Mulheres.png", p4)
## Saving 7 x 5 in image
cursos_selcionados <- c("Técnico em Manutenção e Suporte em Informática", "Técnico em Informática")
dado_summary = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(str_detect(`Instituição`, "^IF")) %>%
filter(Sexo == "Masculino") %>%
group_by(ano) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Nome de Curso`) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100)
## `summarise()` has grouped output by 'ano'. You can override using the `.groups`
## argument.
p5 <- ggplot(dado_summary, aes(x = as.factor(ano), y = percentual_por_sexo, fill = `Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de alunos nos cursos selecionados", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = -0.2, color = "black", position = position_dodge(width = 0.9))
print(p5)
ggsave("dados_percentual_Homem.png", p5)
## Saving 7 x 5 in image
Agora vamos análise o percentual feminino e depois o masculino nos respectivos Eixos tecnológicos: Infraestrutura, Informação e Comunicação, Controle e Processos Industriais.
#unique(dado$Situa__O_Matricula)
#unique(dado$`Eixo Tecnológico`)
#unique(dado$Instituição)
eixo_tecnologico_selecionado <- c("Infraestrutura", "Informação e Comunicação", "Controle e Processos Industriais")
dado_summary = dado %>%
filter(`Eixo Tecnológico` %in% eixo_tecnologico_selecionado) %>%
group_by(ano, `Eixo Tecnológico`) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Eixo Tecnológico`, Sexo) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100) %>%
filter(Sexo == "Feminino")
## `summarise()` has grouped output by 'ano', 'Eixo Tecnológico'. You can override
## using the `.groups` argument.
p6 <- ggplot(dado_summary, aes(x = as.factor(ano), y = percentual_por_sexo, fill = `Eixo Tecnológico`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de alunas nos Eixos Tecnológicos selecionados", x = "", y = "Percentual de alunas %") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(p6)
ggsave("dados_percentual_Mulher_eixo.png", p6)
## Saving 7 x 5 in image
#unique(dado$Situa__O_Matricula)
#unique(dado$`Eixo Tecnológico`)
#unique(dado$Instituição)
eixo_tecnologico_selecionado <- c("Infraestrutura", "Informação e Comunicação", "Controle e Processos Industriais")
dado_summary = dado %>%
filter(`Eixo Tecnológico` %in% eixo_tecnologico_selecionado) %>%
group_by(ano, `Eixo Tecnológico`) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Eixo Tecnológico`, Sexo) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100) %>%
filter(Sexo == "Masculino")
## `summarise()` has grouped output by 'ano', 'Eixo Tecnológico'. You can override
## using the `.groups` argument.
p7 <- ggplot(dado_summary, aes(x = as.factor(ano), y = percentual_por_sexo, fill = `Eixo Tecnológico`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de alunos nos Eixos Tecnológicos selecionados", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(p7)
ggsave("dados_percentual_Homem_eixo.png", p7)
## Saving 7 x 5 in image
situacao_matricula <- c("Evasão")
sit_mat <- c("Concluída", "Em curso", "Integralizada", "Reprovado")
matricula <- ifelse(dado$`Situação de Matrícula`== situacao_matricula, "Abandono", sit_mat)
cursos_selcionados <- c("Técnico em Manutenção e Suporte em Informática", "Técnico em Informática")
dado_summary = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(`Situação de Matrícula`%in% situacao_matricula) %>%
group_by(ano, `Situação de Matrícula`, `Nome de Curso`) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Situação de Matrícula`, Sexo, `Nome de Curso`) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100) %>%
filter(Sexo == "Feminino")
## `summarise()` has grouped output by 'ano', 'Situação de Matrícula', 'Sexo'. You
## can override using the `.groups` argument.
#print(dado_summary)
# Trabalhando com o curso de Técnico em Manutenção e Suporte em Informática para o sexo feminino
dado_Man <- dado_summary %>%
filter(`Nome de Curso` == "Técnico em Manutenção e Suporte em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
Man_Fem <- ggplot(dado_Man, aes(x = as.factor(ano), y = percentual_por_sexo, fill =`Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de evasão Feminina no curso de Manutenção e Suporte em Informática", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(Man_Fem)
ggsave("dados_percentual_Mulher_evasao_Man.png", Man_Fem)
## Saving 7 x 5 in image
# Trabalhando com o curso de Técnico em Informática
dado_info <- dado_summary %>%
filter(`Nome de Curso` == "Técnico em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
Infor_Fem <- ggplot(dado_info, aes(x = as.factor(ano), y = percentual_por_sexo, fill =`Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de evasão Feminina no curso Técnico em Informática", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(Infor_Fem)
ggsave("dados_percentual_Mulher_evasao_Infor.png", Infor_Fem)
## Saving 7 x 5 in image
evasao_mulher <- bind_rows(dado_Man, dado_info)
print(evasao_mulher)
## # A tibble: 10 × 5
## # Groups: Situação de Matrícula, percentual_por_sexo [8]
## ano `Situação de Matrícula` Sexo `Nome de Curso` perce…¹
## <dbl> <chr> <chr> <chr> <dbl>
## 1 2017 Evasão Feminino Técnico em Manutenção e Supor… 34.3
## 2 2018 Evasão Feminino Técnico em Manutenção e Supor… 34.5
## 3 2019 Evasão Feminino Técnico em Manutenção e Supor… 30.1
## 4 2020 Evasão Feminino Técnico em Manutenção e Supor… 33.2
## 5 2021 Evasão Feminino Técnico em Manutenção e Supor… 33.2
## 6 2017 Evasão Feminino Técnico em Informática 38.9
## 7 2018 Evasão Feminino Técnico em Informática 40.0
## 8 2019 Evasão Feminino Técnico em Informática 38.6
## 9 2020 Evasão Feminino Técnico em Informática 40.5
## 10 2021 Evasão Feminino Técnico em Informática 40.5
## # … with abbreviated variable name ¹percentual_por_sexo
p8 <- ggplot(evasao_mulher, aes(x = as.factor(ano), y = percentual_por_sexo, fill =`Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de evasão Feminina nos cursos selecionados", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(p8)
ggsave("dados_percentual_Mulher_evasao.png", p8)
## Saving 7 x 5 in image
dado_summary_1 = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(`Situação de Matrícula`%in% situacao_matricula) %>%
group_by(ano, `Situação de Matrícula`, `Nome de Curso`) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Situação de Matrícula`, Sexo, `Nome de Curso`) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100) %>%
filter(Sexo == "Masculino")
## `summarise()` has grouped output by 'ano', 'Situação de Matrícula', 'Sexo'. You
## can override using the `.groups` argument.
#print(dado_summary)
# Trabalhando com o curso de Técnico em Manutenção e Suporte em Informática para o sexo Masculino
dado_Man <- dado_summary_1 %>%
filter(`Nome de Curso` == "Técnico em Manutenção e Suporte em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
Man_Mas <- ggplot(dado_Man, aes(x = as.factor(ano), y = percentual_por_sexo, fill =`Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de evasão Masculina no curso de Manutenção e Suporte em Informática", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(Man_Mas)
ggsave("dados_percentual_Homem_evasao_Man.png", Man_Mas)
## Saving 7 x 5 in image
# Trabalhando com o curso de Técnico em Informática
dado_info <- dado_summary_1 %>%
filter(`Nome de Curso` == "Técnico em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
Infor_Mas <- ggplot(dado_info, aes(x = as.factor(ano), y = percentual_por_sexo, fill =`Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de evasão Masculina no curso Técnico em Informática", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(Infor_Mas)
ggsave("dados_percentual_Homem_evasao_Infor.png", Infor_Mas)
## Saving 7 x 5 in image
evasao_homem <- bind_rows(dado_Man, dado_info)
print(evasao_homem)
## # A tibble: 10 × 5
## # Groups: Situação de Matrícula, percentual_por_sexo [8]
## ano `Situação de Matrícula` Sexo `Nome de Curso` perce…¹
## <dbl> <chr> <chr> <chr> <dbl>
## 1 2017 Evasão Masculino Técnico em Manutenção e Supo… 65.7
## 2 2018 Evasão Masculino Técnico em Manutenção e Supo… 65.5
## 3 2019 Evasão Masculino Técnico em Manutenção e Supo… 69.9
## 4 2020 Evasão Masculino Técnico em Manutenção e Supo… 66.8
## 5 2021 Evasão Masculino Técnico em Manutenção e Supo… 66.8
## 6 2017 Evasão Masculino Técnico em Informática 61.1
## 7 2018 Evasão Masculino Técnico em Informática 60.0
## 8 2019 Evasão Masculino Técnico em Informática 61.4
## 9 2020 Evasão Masculino Técnico em Informática 59.5
## 10 2021 Evasão Masculino Técnico em Informática 59.5
## # … with abbreviated variable name ¹percentual_por_sexo
p9 <- ggplot(evasao_homem, aes(x = as.factor(ano), y = percentual_por_sexo, fill =`Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de evasão Masculina nos cursos selecionados", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(p9)
ggsave("dados_percentual_Homem_evasao.png", p9)
## Saving 7 x 5 in image
#unique(dado_2017$`Situação de Matrícula`)
#unique(dado_2018$`Situação de Matrícula`)
#unique(dado_2019$`Situação de Matrícula`)
#unique(dado_2020$`Situação de Matrícula`)
#unique(dado_2021$`Situação de Matrícula`)
#unique(dado$`Situação de Matrícula`)
situacao_matricula <- c("Em curso")
cursos_selcionados <- c("Técnico em Manutenção e Suporte em Informática", "Técnico em Informática")
dado_summary1 = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(`Situação de Matrícula` %in% situacao_matricula) %>%
group_by(ano, `Situação de Matrícula`, `Nome de Curso`) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Situação de Matrícula`, Sexo, `Nome de Curso`) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100) %>%
filter(Sexo == "Feminino")
## `summarise()` has grouped output by 'ano', 'Situação de Matrícula', 'Sexo'. You
## can override using the `.groups` argument.
p10 <- ggplot(dado_summary1, aes(x = as.factor(ano), y = percentual_por_sexo, fill = `Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de alunas ainda nos cursos selecionados", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(dado_summary1)
## # A tibble: 10 × 5
## # Groups: ano, Situação de Matrícula, Sexo [5]
## ano `Situação de Matrícula` Sexo `Nome de Curso` perce…¹
## <dbl> <chr> <chr> <chr> <dbl>
## 1 2017 Em curso Feminino Técnico em Informática 37.4
## 2 2017 Em curso Feminino Técnico em Manutenção e Supor… 33.4
## 3 2018 Em curso Feminino Técnico em Informática 38.9
## 4 2018 Em curso Feminino Técnico em Manutenção e Supor… 33.8
## 5 2019 Em curso Feminino Técnico em Informática 40.7
## 6 2019 Em curso Feminino Técnico em Manutenção e Supor… 34.8
## 7 2020 Em curso Feminino Técnico em Informática 41.8
## 8 2020 Em curso Feminino Técnico em Manutenção e Supor… 35.8
## 9 2021 Em curso Feminino Técnico em Informática 41.8
## 10 2021 Em curso Feminino Técnico em Manutenção e Supor… 35.8
## # … with abbreviated variable name ¹percentual_por_sexo
print(p10)
ggsave("dados_percentual_Mulher_permanencia.png", p10)
## Saving 7 x 5 in image
dado_summary1_1 = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(`Situação de Matrícula` %in% situacao_matricula) %>%
group_by(ano, `Situação de Matrícula`, `Nome de Curso`) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Situação de Matrícula`, Sexo, `Nome de Curso`) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100) %>%
filter(Sexo == "Masculino")
## `summarise()` has grouped output by 'ano', 'Situação de Matrícula', 'Sexo'. You
## can override using the `.groups` argument.
p11 <- ggplot(dado_summary1_1, aes(x = as.factor(ano), y = percentual_por_sexo, fill = `Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de alunos ainda nos cursos selecionados", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(dado_summary1_1)
## # A tibble: 10 × 5
## # Groups: ano, Situação de Matrícula, Sexo [5]
## ano `Situação de Matrícula` Sexo `Nome de Curso` perce…¹
## <dbl> <chr> <chr> <chr> <dbl>
## 1 2017 Em curso Masculino Técnico em Informática 62.6
## 2 2017 Em curso Masculino Técnico em Manutenção e Supo… 66.6
## 3 2018 Em curso Masculino Técnico em Informática 61.1
## 4 2018 Em curso Masculino Técnico em Manutenção e Supo… 66.2
## 5 2019 Em curso Masculino Técnico em Informática 59.3
## 6 2019 Em curso Masculino Técnico em Manutenção e Supo… 65.2
## 7 2020 Em curso Masculino Técnico em Informática 58.2
## 8 2020 Em curso Masculino Técnico em Manutenção e Supo… 64.2
## 9 2021 Em curso Masculino Técnico em Informática 58.2
## 10 2021 Em curso Masculino Técnico em Manutenção e Supo… 64.2
## # … with abbreviated variable name ¹percentual_por_sexo
print(p11)
ggsave("dados_percentual_Homem_permanencia.png", p11)
## Saving 7 x 5 in image
Para se trabalhar com os dados de conclusão as matriculas que estavam como Integralizada e as Concluídas foram taodas renomeadas para concluídas
#unique(dado_2017$`Situação de Matrícula`)
#unique(dado$`Situação de Matrícula`)
situacao_matricula <- c("Concluída")
sit_mat <- c("Evasão", "Em curso", "Reprovado")
matricula <- ifelse(dado$`Situação de Matrícula`== situacao_matricula, "Concluída", sit_mat)
cursos_selcionados <- c("Técnico em Manutenção e Suporte em Informática", "Técnico em Informática")
dado_summary2 = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(`Situação de Matrícula`=="Concluída") %>%
group_by(ano, `Situação de Matrícula`, `Nome de Curso`) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Situação de Matrícula`, Sexo, `Nome de Curso`) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100) %>%
filter(Sexo == "Feminino")
## `summarise()` has grouped output by 'ano', 'Situação de Matrícula', 'Sexo'. You
## can override using the `.groups` argument.
#print(dado_summary)
# Trabalhando com o curso de Técnico em Técnico em Manutenção e Suporte em Informática
dado_Man <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Manutenção e Suporte em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Trabalhando com o curso de Técnico em Informática
dado_info <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
conclusao_mulher <- bind_rows(dado_Man, dado_info)
print(conclusao_mulher)
## # A tibble: 10 × 5
## # Groups: Situação de Matrícula, percentual_por_sexo [8]
## ano `Situação de Matrícula` Sexo `Nome de Curso` perce…¹
## <dbl> <chr> <chr> <chr> <dbl>
## 1 2017 Concluída Feminino Técnico em Manutenção e Supor… 36.6
## 2 2018 Concluída Feminino Técnico em Manutenção e Supor… 34.1
## 3 2019 Concluída Feminino Técnico em Manutenção e Supor… 34.4
## 4 2020 Concluída Feminino Técnico em Manutenção e Supor… 33.6
## 5 2021 Concluída Feminino Técnico em Manutenção e Supor… 33.6
## 6 2017 Concluída Feminino Técnico em Informática 40.3
## 7 2018 Concluída Feminino Técnico em Informática 38.2
## 8 2019 Concluída Feminino Técnico em Informática 38.7
## 9 2020 Concluída Feminino Técnico em Informática 39.7
## 10 2021 Concluída Feminino Técnico em Informática 39.7
## # … with abbreviated variable name ¹percentual_por_sexo
p12 <- ggplot(conclusao_mulher, aes(x = as.factor(ano), y = percentual_por_sexo, fill =`Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de conclusão Feminina nos cursos selecionados", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(p12)
ggsave("dados_percentual_Mulheres_conclusao.png", p12)
## Saving 7 x 5 in image
dado_summary2_2 = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(`Situação de Matrícula` %in% situacao_matricula) %>%
group_by(ano, `Situação de Matrícula`, `Nome de Curso`) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Situação de Matrícula`, Sexo, `Nome de Curso`) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100) %>%
filter(Sexo == "Feminino")
## `summarise()` has grouped output by 'ano', 'Situação de Matrícula', 'Sexo'. You
## can override using the `.groups` argument.
#print(dado_summary)
# Trabalhando com o curso de Técnico em Técnico em Manutenção e Suporte em Informática
dado_Man <- dado_summary2_2 %>%
filter(`Nome de Curso` == "Técnico em Manutenção e Suporte em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
p13 <- ggplot(dado_Man, aes(x = as.factor(ano), y = percentual_por_sexo, fill = `Situação de Matrícula`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de conclusão feminino no curso de Técnico em Manutenção e Suporte em Informática", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(p13)
ggsave("dados_percentual_Mulheres_conclusao_Man.png", p13)
## Saving 7 x 5 in image
# Trabalhando com o curso de Técnico em Informática
dado_info <- dado_summary2_2 %>%
filter(`Nome de Curso` == "Técnico em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
p14 <- ggplot(dado_info, aes(x = as.factor(ano), y = percentual_por_sexo, fill = `Situação de Matrícula`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de conclusão feminino no curso de Técnico em Informática", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(p14)
ggsave("dados_percentual_Mulher_conclusao_Infor.png", p14)
## Saving 7 x 5 in image
Visualizando a mesma informação para os alunos (representatividade masculina)
#unique(dado_2017$`Situação de Matrícula`)
#unique(dado$`Situação de Matrícula`)
situacao_matricula <- c("Concluída", "Integralizada")
cursos_selcionados <- c("Técnico em Manutenção e Suporte em Informática", "Técnico em Informática")
dado_summary2 = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(`Situação de Matrícula` %in% situacao_matricula) %>%
group_by(ano, `Situação de Matrícula`, `Nome de Curso`) %>%
mutate(nalunos = n()) %>%
group_by(ano, `Situação de Matrícula`, Sexo, `Nome de Curso`) %>%
summarise(percentual_por_sexo = n() / first(nalunos) * 100) %>%
filter(Sexo == "Masculino")
## `summarise()` has grouped output by 'ano', 'Situação de Matrícula', 'Sexo'. You
## can override using the `.groups` argument.
#print(dado_summary)
# Trabalhando com o curso de Técnico em Técnico em Manutenção e Suporte em Informática
dado_Man <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Manutenção e Suporte em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
p15 <- ggplot(dado_Man, aes(x = as.factor(ano), y = percentual_por_sexo, fill = `Situação de Matrícula`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de conclusão masculina no curso de Técnico em Manutenção e Suporte em Informática", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(p15)
ggsave("dados_percentual_Homem_conclusao_Man.png", p15)
## Saving 7 x 5 in image
# Trabalhando com o curso de Técnico em Informática
dado_info <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
p16 <- ggplot(dado_info, aes(x = as.factor(ano), y = percentual_por_sexo, fill = `Situação de Matrícula`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de conclusão masculina no curso de Técnico em Informática", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(p16)
ggsave("dados_percentual_Homem_conclusao_Infor.png", p16)
## Saving 7 x 5 in image
conclusao_homem <- bind_rows(dado_Man, dado_info)
print(conclusao_homem)
## # A tibble: 10 × 5
## # Groups: Situação de Matrícula, percentual_por_sexo [8]
## ano `Situação de Matrícula` Sexo `Nome de Curso` perce…¹
## <dbl> <chr> <chr> <chr> <dbl>
## 1 2017 Concluída Masculino Técnico em Manutenção e Supo… 63.4
## 2 2018 Concluída Masculino Técnico em Manutenção e Supo… 65.9
## 3 2019 Concluída Masculino Técnico em Manutenção e Supo… 65.6
## 4 2020 Concluída Masculino Técnico em Manutenção e Supo… 66.4
## 5 2021 Concluída Masculino Técnico em Manutenção e Supo… 66.4
## 6 2017 Concluída Masculino Técnico em Informática 59.7
## 7 2018 Concluída Masculino Técnico em Informática 61.8
## 8 2019 Concluída Masculino Técnico em Informática 61.3
## 9 2020 Concluída Masculino Técnico em Informática 60.3
## 10 2021 Concluída Masculino Técnico em Informática 60.3
## # … with abbreviated variable name ¹percentual_por_sexo
p17 <- ggplot(conclusao_homem, aes(x = as.factor(ano), y = percentual_por_sexo, fill =`Nome de Curso`)) +
geom_bar(stat = "identity", position = position_dodge()) +
labs(title = "Percentual de conclusão masculina nos cursos selecionados", x = "", y = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
print(p17)
ggsave("dados_percentual_Homem_conclusao.png", p17)
## Saving 7 x 5 in image