Explorar el Código

`cover` table should have distinct rows, fill in missing covers

main
Garrick Aden-Buie hace 2 años
padre
commit
87bca76b78
No se encontró ninguna clave conocida en la base de datos para esta firma
Se han modificado 1 ficheros con 43 adiciones y 1 borrados
  1. +43
    -1
      process/R/read_report_file.R

+ 43
- 1
process/R/read_report_file.R Ver fichero

post_process_steps_for_table <- function(data, table) { post_process_steps_for_table <- function(data, table) {
switch( switch(
table, table,
cover = ,
accounts = distinct(data),
forgiven_loans = , forgiven_loans = ,
loan_proceeds = filter(data, !is.na(amount)), loan_proceeds = filter(data, !is.na(amount)),
data data
all_exports <- dir_ls(dir_sboe_id, glob = "*.txt") all_exports <- dir_ls(dir_sboe_id, glob = "*.txt")
info <- report_info_in_report_list(all_exports, report_list) info <- report_info_in_report_list(all_exports, report_list)


info$path |>
all <-
info$path |>
map(read_report_file) |> map(read_report_file) |>
list_transpose_bind() |> list_transpose_bind() |>
map(report_data_set_column_type) map(report_data_set_column_type)

if (!"cover" %in% names(all)) {
all$cover <- semi_join(report_list, info, by = "report_id") |> create_missing_cover()
return(all)
}

missing_cover <-
report_list |>
semi_join(info, by = "report_id") |> # in this export group
anti_join(all$cover, by = "report_id") # but doesn't have cover

if (nrow(missing_cover) == 0) {
return(all)
}

all$cover <- bind_rows(all$cover, create_missing_cover(missing_cover))

all
} }


report_data_set_column_type <- function(data) { report_data_set_column_type <- function(data) {


return_path return_path
} }

create_missing_cover <- function(missing_cover) {
missing_cover |>
mutate(report_type = paste(year, doc_name)) |>
select(
report_id,
sboe_id,
committee_name,
report_type,
date_from = start_date,
date_to = end_date,
date_filed = received
) |>
mutate(
street_1 = NA_character_, street_2 = NA_character_, city = NA_character_,
state = NA_character_, zip_code = NA_character_, country = NA_character_,
postal_code = NA_character_, committee_type = NA_character_,
.before = report_type
) |>
mutate(fund_type = NA_character_, fund_name = NA_character_, .after = report_type)
}

Cargando…
Cancelar
Guardar