Skip to content

Commit

Permalink
mudando gitignore
Browse files Browse the repository at this point in the history
  • Loading branch information
jtrecenti committed Feb 15, 2023
1 parent d37ae58 commit 777cb59
Show file tree
Hide file tree
Showing 11 changed files with 922 additions and 8 deletions.
16 changes: 8 additions & 8 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
data-raw
da_basicas.rds
da_partes.rds
da_rfb.rds
Datajud.csv
sirenejud.csv
todos_estab.rds
Datajud.xls
data-raw/corrupcao
data-raw/elasticsearch
data-raw/export
data-raw/jusbrasil
data-raw/misc
data-raw/rfb
data-raw/sirenejud
data-raw/trf1
.Rproj.user
.Rhistory
.Rdata
Expand Down
309 changes: 309 additions & 0 deletions data-raw/0-load.R
Original file line number Diff line number Diff line change
@@ -0,0 +1,309 @@
## Base antiga do SireneJud

# da <- readr::read_csv("Datajud.csv", lazy = TRUE)
#
# ler_coluna_json <- function(x) {
# if (is.na(x)) return(tibble::tibble())
# res <- jsonlite::fromJSON(x)
# if (length(res) == 0) return(tibble::tibble())
# if (is.data.frame(res)) res <- tibble::as_tibble(res)
# res
# }
#
#
# da |>
# dplyr::select(FID, dplyr::starts_with("partes")) |>
# dplyr::glimpse()
#
# da_basicas <- da |>
# dplyr::mutate(
# lat = readr::parse_number(stringr::str_extract(geom, "(?<=\\()[^ ]+")),
# lon = readr::parse_number(stringr::str_extract(geom, "(?<=[0-9] )[^)]+"))
# ) |>
# dplyr::mutate(
# co_assunto = purrr::map(co_assunto, ler_coluna_json),
# noassuntos = purrr::map(noassuntos, ler_coluna_json)
# ) |>
# dplyr::transmute(
# id = FID,
# id_processo = numprocess,
# trib_esfera = esfera,
# trib_tribunal = tribunal,
# trib_porte = porte_tribunal_nome,
# trib_co_orgao = cod_orgao,
# trib_nm_orgao = orgaojulgador,
# loc_uf = uf,
# loc_muni = municipio,
# loc_lat = lat,
# loc_lon = lon,
# sgt_nm_classe = classe,
# sgt_nm_assunto = noassuntos,
# sgt_co_assunto = co_assunto,
# sgt_complexo = complex_assunto == "complex",
# dt_novo = dt_inicio_situacao_novo,
# dt_julgado = dt_inicio_situacao_julgado,
# dt_baixado = dt_inicio_situacao_baixado,
# st_grau = grau,
# st_tempo = tempo_tramitacao,
# st_encerrado = as.numeric(flg_julgamento == "Concluído")
# )
#
# readr::write_rds(da_basicas, "da_basicas.rds")
#
# da_partes <- da |>
# dplyr::transmute(
# id = FID,
# partes = purrr::map(partes_pa_list, ler_coluna_json)
# ) |>
# tidyr::unnest(partes) |>
# janitor::clean_names()
#
# readr::write_rds(da_partes, "da_partes.rds")


# ambiental datajud -------------------------------------------------------

# sirenejud novo ----------------------------------------------------------

## Alto processamento (não rodar)

da_raw <- readr::read_csv2(
"data-raw/sirenejud/datajud_new_261022.csv",
lazy = TRUE,
locale = readr::locale(encoding = "UTF-8")
)

da_basicas <- da_raw |>
# dplyr::mutate(
# lat = readr::parse_number(stringr::str_extract(geom, "(?<=\\()[^ ]+")),
# lon = readr::parse_number(stringr::str_extract(geom, "(?<=[0-9] )[^)]+"))
# ) |>
dplyr::mutate(
co_assunto = purrr::map(co_assunto, ler_coluna_json),
noassuntos = purrr::map(noassuntos, ler_coluna_json)
) |>
dplyr::transmute(
# id = geom,
# id = FID,
id_processo = numprocess,
trib_esfera = esfera,
trib_tribunal = tribunal,
trib_porte = porte_tribunal_nome,
trib_co_orgao = cod_orgao,
trib_nm_orgao = orgaojulgador,
loc_uf = uf,
loc_muni = municipio,
# loc_lat = lat,
# loc_lon = lon,
sgt_nm_classe = classe,
sgt_nm_assunto = noassuntos,
sgt_co_assunto = co_assunto,
sgt_complexo = complex_assunto == "complex",
dt_novo = dt_inicio_situacao_novo,
dt_julgado = dt_inicio_situacao_julgado,
dt_baixado = dt_inicio_situacao_baixado,
st_grau = grau,
st_tempo = tempo_tramitacao,
st_encerrado = as.numeric(flg_julgamento == "Concluído")
)

readr::write_rds(da_basicas, "data-raw/sirenejud/da_basicas.rds")

da_partes_sirenejud <- da_raw |>
dplyr::semi_join(da_basicas_amazon, c("numprocess" = "id_processo")) |>
dplyr::transmute(
id_processo = numprocess,
partes = purrr::map(partes_pa_list, ler_coluna_json, .progress = TRUE)
) |>
tidyr::unnest(partes) |>
janitor::clean_names()

readr::write_rds(da_partes_sirenejud, "data-raw/sirenejud/da_partes_sirenejud.rds")

readr::write_rds(da_partes_sirenejud, "inst/relatorios/da_partes_sirenejud.rds")

## Baixo processamento (rodar)

da_basicas <- readr::read_rds("data-raw/sirenejud/da_basicas.rds")

amazon <- c("AC", "AM", "RR", "AP", "PA", "MA", "TO", "RO", "MT")
## area dos municipios na amazonia legal
am_legal <- readxl::read_excel("data-raw/misc/lista_de_municipios_Amazonia_Legal_2021.xlsx") |>
janitor::clean_names() |>
dplyr::transmute(
id_municipio = as.character(cd_mun),
area = area_int
)

da_basicas_amazon <- da_basicas |>
dplyr::filter(
!sgt_nm_classe %in% c("Termo Circunstanciado", "Inquérito Policial"),
st_grau == "G1"
) |>
dplyr::filter(loc_uf %in% c(amazon)) |>
munifacil::limpar_colunas(loc_muni, loc_uf) |>
munifacil::incluir_codigo_ibge(diagnostico = FALSE) |>
dplyr::left_join(
dplyr::select(abjData::muni, muni_id),
c("id_municipio" = "muni_id")
) |>
dplyr::left_join(
dplyr::select(abjData::pnud_min, muni_id, ano, pop) |>
dplyr::filter(ano == 2010),
c("id_municipio" = "muni_id")
) |>
dplyr::left_join(am_legal, "id_municipio")


readr::write_rds(da_basicas_amazon, "inst/relatorios/da_sirenejud.rds")

# corrupcao ---------------------------------------------------------------

## Alto processamento (não rodar)

arqs_corrup <- fs::dir_ls("data-raw/corrupcao/", glob = "*.csv", recurse = TRUE)

ler <- function(x) {
# message(x)
readr::read_csv2(
x,
col_types = readr::cols(.default = readr::col_character()),
lazy = TRUE,
show_col_types = FALSE,
locale = readr::locale(grouping_mark = ".", decimal_mark = ",")
)
}

tictoc::tic()
da_corrup <- arqs_corrup |>
purrr::map(ler) |>
dplyr::bind_rows(.id = "file")
tictoc::toc()


readr::write_rds(da_corrup, "data-raw/corrupcao/da_corrup.rds")

da_corrup_select <- da_corrup |>
dplyr::select(
file,
indice,
id,
sigla = siglaTribunal,
grau,
classes = classesProcessuais,
numero,
assuntos,
dt_dist = mov_1st_recebimento_dataHora,
orgao_julgador = orgaoJulgador_codigoOrgao,
eletronico = procEl,
polo_at_count,
polo_at_juridica_count,
polo_pa_count,
polo_pa_juridica_count,
mov_count,
dt_baixa = mov_last_baixa_dataHora
)

readr::write_rds(da_corrup_select, "data-raw/corrupcao/da_corrup_select.rds")

## Baixo processamento (rodar)

da_corrup_select <- readr::read_rds("data-raw/corrupcao/da_corrup_select.rds")

rx_assuntos_drogas <- "3372|11355|11346|5566|9864|3553|3417|11315|3614|3548|5897|3608|3607|9859|5899|5898|5894|9858|9866|10987|5885|9861|5895|9865|5896|9860|5901|9862|9971|5900"
da_corrup_orgaos <- da_corrup_select |>
dplyr::mutate(orgao_julgador = as.numeric(orgao_julgador)) |>
dplyr::semi_join(
da_basicas_amazon,
c("orgao_julgador" = "trib_co_orgao")
) |>
dplyr::distinct(numero, .keep_all = TRUE) |>
dplyr::filter(!classes %in% c("[278]", "[279]")) |>
dplyr::filter(!stringr::str_detect(assuntos, rx_assuntos_drogas)) |>
dplyr::mutate(
assuntos = stringr::str_extract(assuntos, "[0-9, ]+")
) |>
tidyr::separate_wider_delim(
cols = assuntos,
names = c("codigo", "assunto2"),
delim = ", ",
too_few = "align_start",
too_many = "merge",
) |>
dplyr::left_join(
dplyr::distinct(abjData::assuntos, codigo, .keep_all = TRUE),
c("codigo")
) |>
dplyr::mutate(
dplyr::across(
dplyr::starts_with("assunto_nome"),
\(x) dplyr::na_if(x, y = "-")
),
assunto = dplyr::coalesce(
assunto_nome6, assunto_nome5,
assunto_nome4, assunto_nome3,
assunto_nome2, assunto_nome1
)
) |>
dplyr::mutate(
pd_seq_orgao = as.character(orgao_julgador)
) |>
dplyr::left_join(obsCIEE::varas, "pd_seq_orgao") |>
dplyr::left_join(abjData::muni, c("id_municipio" = "muni_id")) |>
dplyr::left_join(
abjData::pnud_min |>
dplyr::filter(ano == 2010) |>
dplyr::select(muni_id, pop),
c("id_municipio" = "muni_id")
) |>
dplyr::left_join(am_legal, "id_municipio") |>
dplyr::mutate(
dt_baixa = as.Date(lubridate::ymd_hms(dt_baixa)),
dt_dist = as.Date(lubridate::ymd_hms(dt_dist)),
st_encerrado = !is.na(dt_baixa),
dt_baixa_complete = dplyr::if_else(st_encerrado, dt_baixa, as.Date("2022-12-07")),
st_tempo = as.numeric(dt_baixa_complete - dt_dist) / 30.25,
st_tempo = dplyr::if_else(st_tempo < 0, NA_real_, st_tempo)
)

readr::write_rds(da_corrup_orgaos, "inst/relatorios/da_datajud.rds")

# amostra de processos ----------------------------------------------------

## Amostra antiga

# da_corrup_select |>
# dplyr::filter(
# sigla %in% c(paste0("TJ", amazon), "TRF1"),
# grau %in% c("G1", "G2")
# ) |>
# dplyr::glimpse()


# da_completa <- da_corrup_orgaos |>
# dplyr::transmute(
# origem = "datajud_lavagem",
# id_processo = numero,
# tribunal = sigla
# ) |>
# dplyr::distinct(id_processo, .keep_all = TRUE) |>
# dplyr::bind_rows(
# dplyr::transmute(
# da_basicas_amazon,
# origem = "sirenejud",
# id_processo,
# tribunal = trib_tribunal
# ) |>
# dplyr::distinct(id_processo, .keep_all = TRUE)
# )
#
# set.seed(1)
#
# amostra <- da_completa |>
# dplyr::group_by(origem, tribunal) |>
# dplyr::slice_sample(n = 10) |>
# dplyr::ungroup()
#
# writexl::write_xlsx(amostra, "data-raw/export/amostra_20221128_datajud_lavagem_sirenejud.xlsx")


57 changes: 57 additions & 0 deletions data-raw/1-rfb.R
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
## Alto processamento e conexão BD externo (não rodar)

con <- cargueiro::bq_connect("rfb", "datajudApp")
DBI::dbListTables(con)
tb <- dplyr::tbl(con, "estabelecimento")


# CNPJ LIST ---------------------------------------------------------------
da_partes_pj <- da_partes_sirenejud |>
dplyr::filter(tipo_pessoa == "JURIDICA") |>
dplyr::select(id_processo, nome, cnpj = numero_documento_principal) |>
dplyr::mutate(
nome = stringr::str_squish(nome),
nome = abjutils::rm_accent(nome)
)

da_partes_pj_cnpj <- da_partes_pj |>
dplyr::distinct(cnpj) |>
dplyr::filter(stringr::str_length(stringr::str_squish(cnpj)) == 14)

raiz <- da_partes_pj_cnpj |>
with(stringr::str_sub(cnpj, 1, 8)) |>
unique()

# download BQ -------------------------------------------------------------

todos_estab <- tb |>
dplyr::filter(cnpj_raiz %in% local(raiz))

todos_estab <- todos_estab |>
dplyr::collect()

readr::write_rds(todos_estab, "data-raw/rfb/todos_estab.rds")

## Baixo processamento (rodar)

todos_estab <- readr::read_rds("data-raw/rfb/todos_estab.rds")
da_partes_sirenejud <- readr::read_rds("data-raw/sirenejud/da_partes_sirenejud.rds")

da_partes_pj <- da_partes_sirenejud |>
dplyr::filter(tipo_pessoa == "JURIDICA") |>
dplyr::select(id_processo, nome, cnpj = numero_documento_principal) |>
dplyr::mutate(
nome = stringr::str_squish(nome),
nome = abjutils::rm_accent(nome)
)

da_partes_pj_cnpj <- da_partes_pj |>
dplyr::distinct(cnpj) |>
dplyr::filter(stringr::str_length(stringr::str_squish(cnpj)) == 14)

da_rfb <- todos_estab |>
dplyr::mutate(cnpj = paste0(cnpj_raiz, cnpj_comp, cnpj_dv)) |>
dplyr::semi_join(da_partes_pj_cnpj, "cnpj")

readr::write_rds(da_rfb, "data-raw/rfb/da_rfb.rds")
readr::write_rds(da_rfb, "inst/relatorios/da_rfb.rds")
Loading

0 comments on commit 777cb59

Please sign in to comment.