Nesta etapa, realizamos o carregamento, a filtragem e o tratamento do
painel educacional de municípios do Brasil
(braziledupanel-municipal.dta). O objetivo foi delimitar o
dataset bruto original para a microrregião da Mata Sul
Pernambucana (composta por 23 municípios), efetuando a
padronização de caracteres, o cruzamento de nomes com códigos IBGE, a
seleção de variáveis de interesse e a criação de novas métricas
derivadas.
install.packages("haven")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.6'
## (as 'lib' is unspecified)
library(haven)
dados <- read_dta("braziledupanel-municipal.dta")
library(stringi)
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
sum(is.na(dados$SIGLA))
## [1] 0
dados <- dados %>%
filter(SIGLA == "PE")
# 1. Lista dos municípios da Mata Sul fornecidos
mata_sul_nomes <- c(
"Água Preta", "Amaraji", "Barreiros", "Belém de Maria", "Catende",
"Chã Grande", "Cortes", "Escada", "Gameleira", "Jaqueira",
"Joaquim Nabuco", "Maraial", "Palmares", "Primavera", "Quipapá",
"Ribeirão", "Rio Formoso", "São Benedito do Sul", "Sirinhaém",
"São José da Coroa Grande", "Tamandaré", "Vitória de Santo Antão", "Xexéu"
)
# 2. Padroniza a lista: remove acentos e converte para MAIÚSCULAS
mata_sul_limpo <- mata_sul_nomes %>%
stri_trans_general("Latin-ASCII") %>%
toupper() %>%
trimws()
# 3. Pega o mapa de CO_MUNICIPIO correspondente a partir das linhas que TÊM nome (MUNIC)
codigos_mata_sul <- dados %>%
filter(!is.na(MUNIC) & MUNIC != "") %>%
mutate(MUNIC_LIMPO = trimws(toupper(stri_trans_general(MUNIC, "Latin-ASCII")))) %>%
filter(MUNIC_LIMPO %in% mata_sul_limpo) %>%
pull(CO_MUNICIPIO) %>%
unique()
# 4. Filtra TODAS as linhas da base (com ou sem nome) que possuem esses códigos
dados_mata_sul <- dados %>%
filter(CO_MUNICIPIO %in% codigos_mata_sul)
colunas_selecionadas <- c(
# Identificação
"NU_ANO_CENSO", "CO_MUNICIPIO", "MUNIC", "CO_UF", "SIGLA",
# Escolas e Alunos (Geral e Municipal)
"SCHOOLS_MUN_NU", "SCHOOLS_MUN_STUD",
"SCHOOLS_NIVFUND_1_NU", "SCHOOLS_NIVFUND_2_NU",
"MATFUND_NU", "MATFUND_I_NU", "MATFUND_T_NU",
# Professores
"PROFFUNDTOT_NU", "PROFFUNDTOT_NU_PUB",
"PROFFUNDINC_PC", "PROFFUNDCOMP_PC", "PROFMED_PC", "PROFSUP_PC",
# Turmas e Razão Aluno/Professor
"CLASSSIZE", "CLASSSIZE_PUB", "CLASSSIZE_I_PUB",
"CLASSSIZE_T_PUB", "STUDTEACH"
)
# 1. Filtrar apenas as colunas que realmente existem no arquivo
educacao_municipal_mata_sul <- dados_mata_sul %>%
select(any_of(colunas_selecionadas))
colSums(is.na(educacao_municipal_mata_sul))
## NU_ANO_CENSO CO_MUNICIPIO MUNIC
## 0 0 0
## CO_UF SIGLA SCHOOLS_MUN_NU
## 0 0 0
## SCHOOLS_MUN_STUD SCHOOLS_NIVFUND_1_NU SCHOOLS_NIVFUND_2_NU
## 0 0 0
## MATFUND_NU MATFUND_I_NU MATFUND_T_NU
## 0 0 0
## PROFFUNDTOT_NU PROFFUNDTOT_NU_PUB PROFFUNDINC_PC
## 0 0 0
## PROFFUNDCOMP_PC PROFMED_PC PROFSUP_PC
## 0 0 0
## CLASSSIZE CLASSSIZE_PUB STUDTEACH
## 0 0 0
educacao_municipal_mata_sul <- educacao_municipal_mata_sul %>%
mutate(
ALUNOS_POR_ESCOLA = SCHOOLS_MUN_STUD / SCHOOLS_MUN_NU
)
# 1. Instalar e carregar o pacote DT
if (!require(DT)) install.packages("DT")
## Loading required package: DT
library(DT)
# 2. Gerar a tabela interativa
datatable(
educacao_municipal_mata_sul,
filter = "top", # Adiciona filtros de busca no topo de cada coluna
rownames = FALSE, # Remove a coluna de índice (1, 2, 3...)
options = list(
pageLength = 10, # Exibe 10 linhas por página por padrão
autoWidth = TRUE,
language = list(
url = "//cdn.datatables.net/plug-ins/1.10.11/i18n/Portuguese-Brasil.json" # Traduz a interface para PT-BR
)
)
)
\[F(\omega) = \int_{-\infty}^{\infty} f(t) e^{-i \omega t} \, dt\] Aplicação: Decompõe um sinal (como som ou imagem) em suas frequências constituintes. É a base da compressão de arquivos MP3, JPEG e MP4. Sem ela, o streaming de música e vídeo na internet seria impossível devido ao tamanho gigantesco dos arquivos. Ela também opera no cancelamento de ruído dos fones de ouvido.
\[\frac{\partial V}{\partial t} + \frac{1}{2}\sigma^2 S^2 \frac{\partial^2 V}{\partial S^2} + r S \frac{\partial V}{\partial S} - r V = 0\] Aplicação: Uma equação diferencial parcial usada para calcular o preço justo de derivados financeiros (opções) ao longo do tempo. É o pilar do mercado financeiro global. Ela dita como os grandes fundos gerenciam riscos, influenciando indiretamente os preços de investimentos, taxas de juros e até os fundos de previdência.
\[R_{\mu\nu} - \frac{1}{2} R g_{\mu\nu} + \Lambda g_{\mu\nu} = \frac{8\pi G}{c^4} T_{\mu\nu}\] Aplicação: Descreve como a massa e a energia curvam o tecido do espaço-tempo, o que nós percebemos como gravidade. Sem a correção matemática baseada nesta fórmula, o GPS do seu celular erraria a sua localização por cerca de 10 quilômetros a cada dia. Como os satélites estão se movendo rápido e longe da Terra, o tempo passa em um ritmo diferente para eles.
\[PR(p_i) = \frac{1 - d}{N} + d \sum_{p_j \in M(p_i)} \frac{PR(p_j)}{L(p_j)}\] Aplicação: Criado para o mecanismo de busca do Google, o algoritmo é amplamente utilizado para ranqueamento de nós em grafos, análise de redes sociais (identificação de influenciadores), recomendação de produtos e análise de redes de citação acadêmica.