diff --git a/.Rbuildignore b/.Rbuildignore index fd5e8e7..3145024 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -12,4 +12,3 @@ .RData ^_pkgdown\.yml$ ^pkgdown$ -^data_prep diff --git a/DESCRIPTION b/DESCRIPTION index e2b4cbc..a3246b1 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,7 +1,7 @@ Type: Package Package: censobr Title: Download Data from Brazil's Population Census -Version: 0.3.2 +Version: 0.3.29999 Authors@R: c(person(given="Rafael H. M.", family="Pereira", email="rafa.pereira.br@gmail.com", diff --git a/tests/tests_rafa/geometry.R b/tests/tests_rafa/geometry.R new file mode 100644 index 0000000..010886f --- /dev/null +++ b/tests/tests_rafa/geometry.R @@ -0,0 +1,41 @@ +#' Add geometry information of census tracts +#' +#' @param df An arrow `Dataset` passed from function above. +#' @param year Numeric. Passed from function above. +#' @param showProgress Logical. Passed from function above. +#' +#' @return An arrow `Dataset` with additional geometry variable. +#' +#' @keywords internal +geometry <- function(df, + year = parent.frame()$year, + showProgress = parent.frame()$showProgress){ + +# df <- censobr::read_tracts(year = 2022, dataset = 'PessoaRenda') +# df <- dplyr::collect(df) + + # download tracts geometry from geobr + tracts_sf <- geobr::read_census_tract(code_tract = 'all', + year = year, + showProgress = showProgress) + + # hamonize col classes + df <- dplyr::mutate(df, code_muni = as.numeric(code_muni), + code_state = as.numeric(code_state)) + + if (year == 2010) { + + # determine key vars + key_vars <- c("code_tract", "code_muni", "code_state") + } + + # drop repeated vars + all_common_vars <- names(df)[names(df) %in% names(tracts_sf)] + vars_to_drop <- setdiff(all_common_vars, key_vars) + tracts_sf <- dplyr::select(tracts_sf, -all_of(vars_to_drop)) + + # merge + temp_sf <- dplyr::left_join(df, tracts_sf) + + return(temp_sf) +}