library(Rcpp)
library(tidyr)
library(bindr)
library(dplyr, warn.conflicts = FALSE)
library(ggplot2)
library(microbenchmark)
library(kableExtra)
library(readr)
library(dplyr)
library(knitr)
library(stringr)
library(DT)
cppSum <- function(big.matrix, N) {
stopifnot(exists("big.matrix")) #pare se nao existir a big.matrix
stopifnot(exists("N")) #pare se nao existir o N
Time <- microbenchmark({
colsums <- rowSumsC(big.matrix)
}, times = N)$time
return(Time)
}
# Gráfico de dispersão
plot(cars)
# Impressão dos dados
print(cars)
## speed dist
## 1 4 2
## 2 4 10
## 3 7 4
## 4 7 22
## 5 8 16
## 6 9 10
## 7 10 18
## 8 10 26
## 9 10 34
## 10 11 17
## 11 11 28
## 12 12 14
## 13 12 20
## 14 12 24
## 15 12 28
## 16 13 26
## 17 13 34
## 18 13 34
## 19 13 46
## 20 14 26
## 21 14 36
## 22 14 60
## 23 14 80
## 24 15 20
## 25 15 26
## 26 15 54
## 27 16 32
## 28 16 40
## 29 17 32
## 30 17 40
## 31 17 50
## 32 18 42
## 33 18 56
## 34 18 76
## 35 18 84
## 36 19 36
## 37 19 46
## 38 19 68
## 39 20 32
## 40 20 48
## 41 20 52
## 42 20 56
## 43 20 64
## 44 22 66
## 45 23 54
## 46 24 70
## 47 24 92
## 48 24 93
## 49 24 120
## 50 25 85
library(ggplot2)
library(dplyr)
# Análise Descritiva
summary(cars)
## speed dist
## Min. : 4.0 Min. : 2.00
## 1st Qu.:12.0 1st Qu.: 26.00
## Median :15.0 Median : 36.00
## Mean :15.4 Mean : 42.98
## 3rd Qu.:19.0 3rd Qu.: 56.00
## Max. :25.0 Max. :120.00
p <- ggplot(cars, aes(x=speed, y=dist))
p + geom_point() + geom_line(color="red") + geom_smooth()
## `geom_smooth()` using method = 'loess'
p <- cars %>%
mutate(teste = speed <= 15) %>%
ggplot()
p + geom_histogram(aes(x=dist, fill=teste),color="black", bins=10)
library(tidyselect)
##
## Attaching package: 'tidyselect'
## The following objects are masked from 'package:dplyr':
##
## contains, ends_with, everything, matches, num_range, one_of,
## starts_with
library(tidyverse)
## ── Attaching packages ──────────────────────────────────────────────────────────────────────────── tidyverse 1.2.1 ──
## ✔ tibble 1.3.4 ✔ purrr 0.2.4
## ✔ tibble 1.3.4 ✔ forcats 0.2.0
## ── Conflicts ─────────────────────────────────────────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ tidyselect::contains() masks dplyr::contains()
## ✖ tidyselect::ends_with() masks dplyr::ends_with()
## ✖ tidyselect::everything() masks dplyr::everything()
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ✖ tidyselect::matches() masks dplyr::matches()
## ✖ tidyselect::num_range() masks dplyr::num_range()
## ✖ tidyselect::one_of() masks dplyr::one_of()
## ✖ tidyselect::starts_with() masks dplyr::starts_with()
library(readr)
base2 <- read_delim("DM_DOCENTE.CSV", "|",
escape_double = FALSE, col_types = cols(CO_CATEGORIA_ADMINISTRATIVA = col_character(),
CO_COR_RACA_DOCENTE = col_character(),
CO_DOCENTE = col_character(), CO_DOCENTE_IES = col_character(),
CO_ESCOLARIDADE_DOCENTE = col_character(),
CO_IES = col_character(), CO_MUNICIPIO_NASCIMENTO = col_character(),
CO_NACIONALIDADE_DOCENTE = col_character(),
CO_ORGANIZACAO_ACADEMICA = col_character(),
CO_PAIS_DOCENTE = col_character(),
CO_REGIME_TRABALHO = col_character(),
CO_SITUACAO_DOCENTE = col_character(),
CO_UF_NASCIMENTO = col_character()),
locale = locale(encoding = "ISO-8859-1"),
trim_ws = TRUE)
### Para diminuir a base gera e trabalhar com uma base menor
base5perc <- base2 %>% sample_frac(size = .05)
saveRDS(base5perc,"base5perc.rds")
### Códigos que estavam no markdown que não irei utilizar por enquanto
library(readr)
# base2 <- read_delim("DM_DOCENTE.CSV", "|",
# escape_double = FALSE, col_types = cols(CO_CATEGORIA_ADMINISTRATIVA = col_character(),
# CO_COR_RACA_DOCENTE = col_character(),
# CO_DOCENTE = col_character(), CO_DOCENTE_IES = col_character(),
# CO_ESCOLARIDADE_DOCENTE = col_character(),
# CO_IES = col_character(), CO_MUNICIPIO_NASCIMENTO = col_character(),
# CO_NACIONALIDADE_DOCENTE = col_character(),
# CO_ORGANIZACAO_ACADEMICA = col_character(),
# CO_PAIS_DOCENTE = col_character(),
# CO_REGIME_TRABALHO = col_character(),
# CO_SITUACAO_DOCENTE = col_character(),
# CO_UF_NASCIMENTO = col_character()),
# locale = locale(encoding = "ISO-8859-1"),
# trim_ws = TRUE)
#saveRDS(base2, "base2.rds")
#saveRDS(object = base2, file = "dados/base2.rds")
library(knitr)
library(tidyverse)
base2 %>%
select(NO_IES, DS_CATEGORIA_ADMINISTRATIVA, CO_MUNICIPIO_NASCIMENTO) %>%
transmute(Nome = NO_IES,
Categoria = DS_CATEGORIA_ADMINISTRATIVA,
Codigo = as.character(CO_MUNICIPIO_NASCIMENTO) ) %>%
mutate(UF = str_sub(string = Codigo, start = 1, end = 2)) %>%
group_by(UF, Categoria) %>%
count() %>%
filter(UF == "26") %>% arrange(desc(n)) %>% kable()
UF | Categoria | n |
---|---|---|
26 | Pública Federal | 4566 |
26 | Privada com fins lucrativos | 3357 |
26 | Privada sem fins lucrativos | 3116 |
26 | Pública Estadual | 1192 |
26 | Pública Municipal | 758 |
26 | Especial | 134 |
library(knitr)
library(tidyverse)
#```{r, echo=False} para não mostrar a tabela
## Construção de Tabelas
# base2 <- readRDS("base2.rds")
base2 <- readRDS("base5perc.rds")
library(DT)
pernambuco <- base2 %>%
select(NO_IES, DS_CATEGORIA_ADMINISTRATIVA, CO_MUNICIPIO_NASCIMENTO) %>%
transmute(Nome = NO_IES,
Categoria = DS_CATEGORIA_ADMINISTRATIVA,
Codigo = as.character(CO_MUNICIPIO_NASCIMENTO) ) %>%
mutate(UF = str_sub(string = Codigo, start = 1, end = 2)) %>%
group_by(UF, Categoria) %>%
summarise(n = n()) %>% mutate(freq = n/sum(n)) %>%
filter(UF == "26") %>% arrange(desc(n))
pernambuco %>% datatable()
## Construção de Gráfico de Barras
### Pernambuco
pernambuco %>%
ggplot(aes(x = reorder(Categoria, n), y = n, fill = Categoria)) +
geom_bar(stat = "identity") + guides(fill = "none") + coord_flip() +
labs(x = "Categoria", y = "Total", title = "Numero de instituicoes por categoria", subtitle = "Estado de Pernambuco") + coord_flip() +
geom_label(aes(label = paste(round(100*freq), "%" , sep = "")))
## Construção de Gráfico de Barras
### Pernambuco e Paraíba
### Tabela de Pernambuco e Paraíba
PE_PB <- base2 %>%
select(NO_IES, DS_CATEGORIA_ADMINISTRATIVA, CO_MUNICIPIO_NASCIMENTO) %>%
transmute(Nome = NO_IES,
Categoria = DS_CATEGORIA_ADMINISTRATIVA,
Codigo = as.character(CO_MUNICIPIO_NASCIMENTO) ) %>%
mutate(UF = str_sub(string = Codigo, start = 1, end = 2)) %>%
filter(UF == "26"|UF == "25") %>%
mutate(Estado=if_else(UF=="26", "Pernambuco", "Paraiba")) %>%
group_by(Estado, Categoria) %>%
summarise(n = n()) %>% mutate(freq = n/sum(n)) %>%
arrange(desc(n))
PE_PB
## # A tibble: 11 x 4
## # Groups: Estado [2]
## Estado Categoria n freq
## <chr> <chr> <int> <dbl>
## 1 Pernambuco Pública Federal 238 0.380800000
## 2 Pernambuco Privada com fins lucrativos 157 0.251200000
## 3 Pernambuco Privada sem fins lucrativos 138 0.220800000
## 4 Paraiba Privada com fins lucrativos 130 0.371428571
## 5 Paraiba Pública Federal 84 0.240000000
## 6 Paraiba Privada sem fins lucrativos 83 0.237142857
## 7 Pernambuco Pública Estadual 58 0.092800000
## 8 Paraiba Pública Estadual 52 0.148571429
## 9 Pernambuco Pública Municipal 31 0.049600000
## 10 Pernambuco Especial 3 0.004800000
## 11 Paraiba Pública Municipal 1 0.002857143
summary(PE_PB)
## Estado Categoria n freq
## Length:11 Length:11 Min. : 1.00 Min. :0.002857
## Class :character Class :character 1st Qu.: 41.50 1st Qu.:0.071200
## Mode :character Mode :character Median : 83.00 Median :0.220800
## Mean : 88.64 Mean :0.181818
## 3rd Qu.:134.00 3rd Qu.:0.245600
## Max. :238.00 Max. :0.380800
# Gráfico 1
PE_PB %>% ggplot(aes(x = reorder(Categoria,n), y = n, fill = Estado)) +
geom_bar(stat = "identity") + coord_flip()
# Gráfico 2
PE_PB %>% ggplot(aes(x = reorder(Categoria,n), y = n, fill = Estado)) +
geom_bar(stat = "identity", position = "dodge") + coord_flip()
# Gráfico 3
PE_PB %>% ggplot(aes(x = reorder(Categoria,n), y = n, fill = Estado)) +
geom_bar(stat = "identity", position = "dodge") + coord_flip() +
facet_wrap(~Estado, scales = "free") + guides(fill = "none")
library(tidyverse)
library(readr)
ies <- read_delim("DM_IES.CSV", "|", escape_double = FALSE,
locale = locale(encoding = "ISO-8859-1"),
trim_ws = TRUE)
## Parsed with column specification:
## cols(
## .default = col_integer(),
## NO_IES = col_character(),
## SGL_IES = col_character(),
## NO_MANTENEDORA = col_character(),
## DS_CATEGORIA_ADMINISTRATIVA = col_character(),
## DS_ORGANIZACAO_ACADEMICA = col_character(),
## NO_MUNICIPIO_IES = col_character(),
## SGL_UF_IES = col_character(),
## NO_REGIAO_IES = col_character(),
## VL_RECEITA_PROPRIA = col_double(),
## VL_TRANSFERENCIA = col_double(),
## VL_OUTRA_RECEITA = col_double(),
## VL_DES_PESSOAL_REM_DOCENTE = col_double(),
## VL_DES_PESSOAL_REM_TECNICO = col_double(),
## VL_DES_PESSOAL_ENCARGO = col_double(),
## VL_DES_CUSTEIO = col_double(),
## VL_DES_INVESTIMENTO = col_double(),
## VL_DES_PESQUISA = col_double(),
## VL_DES_OUTRAS = col_double()
## )
## See spec(...) for full column specifications.
docentes <- read_delim("DM_DOCENTE.CSV",
"|", escape_double = FALSE, locale = locale(encoding = "ISO-8859-1"),
trim_ws = TRUE)
## Parsed with column specification:
## cols(
## .default = col_integer(),
## NO_IES = col_character(),
## DS_CATEGORIA_ADMINISTRATIVA = col_character(),
## DS_ORGANIZACAO_ACADEMICA = col_character(),
## CO_DOCENTE = col_double(),
## DS_SITUACAO_DOCENTE = col_character(),
## DS_ESCOLARIDADE_DOCENTE = col_character(),
## DS_REGIME_TRABALHO = col_character(),
## DS_SEXO_DOCENTE = col_character(),
## DS_COR_RACA_DOCENTE = col_character(),
## DS_NACIONALIDADE_DOCENTE = col_character(),
## IN_VISITANTE_IFES_VINCULO = col_character()
## )
## See spec(...) for full column specifications.
ies_1 <- ies %>% select(CO_IES:SGL_UF_IES, starts_with("VL_"))
docentes_1 <- docentes %>% select(CO_IES, CO_DOCENTE_IES, IN_SEXO_DOCENTE, DS_ESCOLARIDADE_DOCENTE)
ies_2 <- ies_1 %>% gather(key = TIPO, value = VALOR, -CO_IES:-SGL_UF_IES)
ies_3 <- ies_2 %>% group_by(CO_IES, NO_IES, DS_CATEGORIA_ADMINISTRATIVA, SGL_UF_IES) %>%
summarise(total = sum(VALOR)/1000000)
base <- ies_3 %>% right_join(docentes_1, by = "CO_IES") %>% ungroup()
base %>%
group_by(NO_IES, total, DS_ESCOLARIDADE_DOCENTE) %>%
summarise(N = n()) %>%
mutate(media = total/N)
## # A tibble: 7,193 x 5
## # Groups: NO_IES, total [2,400]
## NO_IES total
## <chr> <dbl>
## 1 "\"FACULDADE DE COMUNICAÇÃO E DESIGN \"\"OSWALDO CRUZ\"\"\"" 2.762263
## 2 "\"FACULDADE DE COMUNICAÇÃO E DESIGN \"\"OSWALDO CRUZ\"\"\"" 2.762263
## 3 "\"FACULDADE DE COMUNICAÇÃO E DESIGN \"\"OSWALDO CRUZ\"\"\"" 2.762263
## 4 ABEU - CENTRO UNIVERSITÁRIO 76.565968
## 5 ABEU - CENTRO UNIVERSITÁRIO 76.565968
## 6 ABEU - CENTRO UNIVERSITÁRIO 76.565968
## 7 Academia Militar das Agulhas Negras 273.653477
## 8 Academia Militar das Agulhas Negras 273.653477
## 9 Academia Militar das Agulhas Negras 273.653477
## 10 Academia Militar das Agulhas Negras 273.653477
## # ... with 7,183 more rows, and 3 more variables:
## # DS_ESCOLARIDADE_DOCENTE <chr>, N <int>, media <dbl>