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)
## Classes and Methods for R developed in the
## Political Science Computational Laboratory
## Department of Political Science
## Stanford University
## Simon Jackman
## hurdle and zeroinfl functions by Achim Zeileis
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/qualificacao-Laryssa
library(skimr)
library(gcookbook)
library(lubridate)
##
## Attaching package: 'lubridate'
##
## The following objects are masked from 'package:base':
##
## date, intersect, setdiff, union
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$`Nome de Curso`)
#unique(dado$`Eixo Tecnológico`)
cursos_selcionados <- c("Técnico em Agrimensura", "Técnico em Edificações", "Técnico em Eletroeletrônica", "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.
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()
Analisando o percentual de meninas para os cursos base desse pesquisa.
cursos_selcionados <- c("Técnico em Agrimensura", "Técnico em Edificações", "Técnico em Eletroeletrônica", "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.
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))
cursos_selcionados <- c("Técnico em Agrimensura", "Técnico em Edificações", "Técnico em Eletroeletrônica", "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.
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))
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.
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))
#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.
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))
Análisando o percentual feminino para os demais Eixos Tecnológicos.
#unique(dado$`Eixo Tecnológico`)
#eixo_tecnologico_selecionado <- c("Infraestrutura", "Informação e Comunicação", "Controle e Processos Industriais")
eixo_tecnologico_selecionado <- c("Gestão e Negócios", "Ambiente e Saúde", "Recursos Naturais", "Turismo, Hospitalidade e Lazer", "Produção Industrial", "Produção Cultural e Design", "Segurança", "Produção Alimentícia", "Desenvolvimento Educacional e Social")
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.
ggplot(dado_summary, aes(x = 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 = "") +
geom_text(aes(label = format(round(percentual_por_sexo, 0), nsmall = 0)), vjust = 1.5, color = "black", position = position_dodge(width = 0.9))
#unique(dado$`Eixo Tecnológico`)
#eixo_tecnologico_selecionado <- c("Infraestrutura", "Informação e Comunicação", "Controle e Processos Industriais")
eixo_tecnologico_selecionado <- c("Gestão e Negócios", "Ambiente e Saúde", "Recursos Naturais", "Turismo, Hospitalidade e Lazer", "Produção Industrial", "Produção Cultural e Design", "Segurança", "Produção Alimentícia", "Desenvolvimento Educacional e Social")
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.
ggplot(dado_summary, aes(x = 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))
situacao_matricula <- c("Abandono", "Transf. externa", "Cancelada", "Desligada", "Transf. interna")
sit_mat <- c("Concluída", "Em curso", "Integralizada", "Reprovado")
matricula <- ifelse(dado$`Situação de Matrícula`== situacao_matricula, "Abandono", sit_mat)
## Warning in dado$`Situação de Matrícula` == situacao_matricula: comprimento do
## objeto maior não é múltiplo do comprimento do objeto menor
cursos_selcionados <- c("Técnico em Agrimensura", "Técnico em Edificações", "Técnico em Eletroeletrônica", "Técnico em Informática")
dado_summary = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(`Situação de Matrícula`=="Abandono") %>%
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 Agrimensura
dado_agri <- dado_summary %>%
filter(`Nome de Curso` == "Técnico em Agrimensura") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Trabalhando com o curso de Técnico em Técnico em Edificações
dado_edi <- dado_summary %>%
filter(`Nome de Curso` == "Técnico em Edificações") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Trabalhando com o curso de Técnico em Eletroeletrônica
dado_eletro <- dado_summary %>%
filter(`Nome de Curso` == "Técnico em Eletroeletrônica") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# 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)
evasao_mulher <- bind_rows(dado_agri, dado_edi, dado_eletro, dado_info)
#print(evasao_mulher)
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))
dado_summary_1 = dado %>%
filter(`Nome de Curso` %in% cursos_selcionados) %>%
filter(`Situação de Matrícula`=="Abandono") %>%
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 Agrimensura
dado_agri <- dado_summary_1 %>%
filter(`Nome de Curso` == "Técnico em Agrimensura") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Trabalhando com o curso de Técnico em Técnico em Edificações
dado_edi <- dado_summary_1 %>%
filter(`Nome de Curso` == "Técnico em Edificações") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Trabalhando com o curso de Técnico em Eletroeletrônica
dado_eletro <- dado_summary_1 %>%
filter(`Nome de Curso` == "Técnico em Eletroeletrônica") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# 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)
evasao_homem <- bind_rows(dado_agri, dado_edi, dado_eletro, dado_info)
#print(evasao_homem)
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))
unique(dado$`Situação de Matrícula`)
## [1] "Concluída" "Abandono" "Em curso" "Transf. externa"
## [5] "Desligada" "Cancelada" "Integralizada" "Transf. interna"
## [9] "Reprovado"
#unique(dado$`Situação de Matrícula`)
situacao_matricula <- c("Em curso")
cursos_selcionados <- c("Técnico em Agrimensura", "Técnico em Edificações", "Técnico em Eletroeletrônica", "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.
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))
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.
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))
#unique(dado_2017$`Situação de Matrícula`)
#unique(dado$`Situação de Matrícula`)
situacao_matricula <- c("Concluída", "Integralizada")
sit_mat <- c("Abandono", "Transf. externa", "Cancelada", "Desligada", "Transf. interna", "Em curso", "Reprovado")
matricula <- ifelse(dado$`Situação de Matrícula`== situacao_matricula, "Concluída", sit_mat)
cursos_selcionados <- c("Técnico em Agrimensura", "Técnico em Edificações", "Técnico em Eletroeletrônica", "Técnico em Informática")
# Olhando para os dados femininos
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 Agrimensura
dado_agri <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Agrimensura") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Trabalhando com o curso de Técnico em Técnico em Edificações
dado_edi <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Edificações") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Trabalhando com o curso de Técnico em Eletroeletrônica
dado_eletro <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Eletroeletrônica") %>%
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)
# Juntando os dados de conclusão referentes a todos os cursos selecionados por sexo Feminino
conclusao_mulher <- bind_rows(dado_agri, dado_edi, dado_eletro, dado_info)
#print(conclusao_mulher)
# Representação visual dos dados de conclusão para o sexo feminino para os cursos selecionados
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))
# Olhando para os dados masculinos
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 == "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 Agrimensura
dado_agri_M <- dado_summary2_2 %>%
filter(`Nome de Curso` == "Técnico em Agrimensura") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Trabalhando com o curso de Técnico em Técnico em Edificações
dado_edi_M <- dado_summary2_2 %>%
filter(`Nome de Curso` == "Técnico em Edificações") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Trabalhando com o curso de Técnico em Eletroeletrônica
dado_eletro_M <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Eletroeletrônica") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Trabalhando com o curso de Técnico em Informática
dado_info_M <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Informática") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
# Juntando os dados de conclusão referentes a todos os cursos selecionados por sexo Masculino
conclusao_Homem <- bind_rows(dado_agri_M, dado_edi_M, dado_eletro_M,dado_info_M)
#print(conclusao_Homem)
# Representação visual dos dados de conclusão para o sexo masculino para os cursos selecionados
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))
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 Agrimensura", "Técnico em Edificações", "Técnico em Eletroeletrônica", "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 Agrimensura
dado_agri <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Agrimensura") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
ggplot(dado_agri, 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 Agrimensura", 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))
# Trabalhando com o curso de Técnico em Técnico em Edificações
dado_edi <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Edificações") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
ggplot(dado_edi, 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 Edificações", 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))
# Trabalhando com o curso de Técnico em Eletroeletrônica
dado_eletro <- dado_summary2 %>%
filter(`Nome de Curso` == "Técnico em Eletroeletrônica") %>%
group_by(`Situação de Matrícula`, percentual_por_sexo)
ggplot(dado_eletro, 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 Eletroeletrônica", 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))
# 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)
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))
#unique(dado_2020$`Situação de Matrícula`)