{"id":19856390,"url":"https://github.com/ipeagit/padronizacao_cnefe","last_synced_at":"2026-01-19T17:03:09.439Z","repository":{"id":261485450,"uuid":"883915650","full_name":"ipeaGIT/padronizacao_cnefe","owner":"ipeaGIT","description":null,"archived":false,"fork":false,"pushed_at":"2026-01-14T20:09:26.000Z","size":11326,"stargazers_count":1,"open_issues_count":7,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-01-15T00:36:43.864Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ipeaGIT.png","metadata":{"files":{"readme":"README.Rmd","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-11-05T19:56:52.000Z","updated_at":"2026-01-14T20:09:30.000Z","dependencies_parsed_at":"2025-01-06T15:35:33.516Z","dependency_job_id":"6f345493-bb92-454f-8a04-e19dca8cf8c1","html_url":"https://github.com/ipeaGIT/padronizacao_cnefe","commit_stats":null,"previous_names":["ipeagit/padronizacao_cnefe"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/ipeaGIT/padronizacao_cnefe","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipeaGIT%2Fpadronizacao_cnefe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipeaGIT%2Fpadronizacao_cnefe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipeaGIT%2Fpadronizacao_cnefe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipeaGIT%2Fpadronizacao_cnefe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ipeaGIT","download_url":"https://codeload.github.com/ipeaGIT/padronizacao_cnefe/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipeaGIT%2Fpadronizacao_cnefe/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28577041,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-19T16:29:19.148Z","status":"ssl_error","status_checked_at":"2026-01-19T16:29:17.772Z","response_time":67,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-12T14:15:23.768Z","updated_at":"2026-01-19T17:03:09.400Z","avatar_url":"https://github.com/ipeaGIT.png","language":"R","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\noutput: github_document \n---\n\n```{r, include = FALSE, message = FALSE}\nknitr::opts_chunk$set(\n  collapse = TRUE,\n  comment = \"#\u003e\",\n  fig.path = \"figures/README-\",\n  out.width = \"100%\"\n)\nsource(\"_targets.R\")\n```\n\n# CNEFE padronizado\n\nEste repositório contém o código utilizado na padronização dos endereços\nlistados no CNEFE 2022. Essa padronização visa principalmente subsidiar o pacote\n[`{geocodebr}`](https://github.com/ipeaGIT/geocodebr/), que faz a geolocalização\nde endereços a partir das informações do CNEFE.\n\nA divulgação e publicização desse repositório tem como objetivo garantir a\ntransparência do trabalho realizado. O código necessário para realizar a\npadronização está disposto como explicado na seção *[Estrutura dos arquivos]* e\npode ser utilizado para reproduzir os resultados finais conforme as instruções\napresentadas na seção *[Rodando o código]*. No entanto, nós **não** garantimos a\ntotal reprodutibilidade do trabalho, uma vez que usamos o pacote interno\n`{ipeadatalake}` (apenas disponível na rede interna do IPEA) para fazer a\nleitura dos dados do CNEFE. Além disso, o comportamento das funções utilizadas\nno código está condicionado a diversos fatores, como a versão instalada do R e o\nsistema operacional em que o código é rodado. Ao final deste documento nós\nlistamos informações relevantes do *[Ambiente de trabalho]* usado no\ndesenvolvimento do estudo.\n\n## Instalação\n\nA primeira etapa para rodar esse projeto é clonar o repositório. Para isso, use\no comando:\n\n```\ngit clone https://github.com/ipeaGIT/padronizacao_cnefe.git\n```\n\n## Estrutura dos arquivos\n\nOs arquivos que compõem este repositório foram organizados de forma que cada\npasta armazene arquivos com uma determinada finalidade:\n\n- `R/` - código utilizado no projeto;\n- `figures/` - figuras geradas ao rodar o código do projeto;\n- `_targets/` - pasta utilizada pelo pacote `{targets}` para manter controle do\nfluxo de trabalho do projeto;\n- `renv/` - pasta utilizada pelo pacote `{renv}` para manter controle das\ndependências do projeto.\n\n## Rodando o código\n\nEste projeto utiliza o pacote\n[`{renv}`](https://rstudio.github.io/renv/index.html) para fazer a gestão de\ndependências do código, garantindo que os mesmos pacotes usados em seu\ndesenvolvimento sejam usados na cópia a ser reproduzida em seu computador. Para\ninstalar as dependências, abra o projeto e rode o seguinte comando:\n\n```r\nrenv::restore()\n```\n\nNesse momento, uma série de pacotes serão listados e o `{renv}` pedirá para\nconfirmar se você deseja instalá-los. Após essa confirmação, os pacotes serão\ninstalados.\n\nO pacote [`{targets}`](https://github.com/ropensci/targets), por sua vez, faz a\ngestão do fluxo de trabalho do projeto. O arquivo `_targets.R` configura as\ndependências entre as diferentes funções internas usadas no código, de forma a\ngarantir que o resultado de uma determinada função esteja sempre sincronizado\ncom o resultado de suas dependências (por exemplo, se configuramos que o\nresultado da função `b()` depende do valor da função `a()`, precisamos atualizar\n`b()` no caso de uma atualização de `a()`).\n\nRode o arquivo `_targets.R` com a função `source()` para carregar as bibliotecas\nnecessárias e configurar as dependências entre as funções e os objetos usados no\nprojeto. Para visualizar as dependências do código na forma de um grafo\ndirigido, use o seguinte comando:\n\n```{r, eval = FALSE}\nsource(\"_targets.R\")\n\ntar_visnetwork(targets_only = TRUE)\n```\n\n```{r, graph-outdated, echo = FALSE}\nwidget \u003c- tar_visnetwork(targets_only = TRUE, store = \"missing\")\n\ntmp_widget \u003c- tempfile(fileext = \".html\")\nvisNetwork::visSave(widget, tmp_widget)\n\ntmp_image \u003c- tempfile(fileext = \".png\")\nwebshot::webshot(tmp_widget, file = tmp_image)\n```\n\nNote que todos os vértices do grafo estão marcados como desatualizados. Para que\neles sejam marcados como atualizados, é necessário rodar o *pipeline* do projeto\nrespeitando suas dependências (nos termos do exemplo anterior, rodando primeiro\na função `a()` e depois a `b()`, que depende dos resultados da `a()`). Para\nisso, use o seguinte comando:\n\n```{r, eval = FALSE}\ntar_make()\n```\n\nCaso a execução deste comando ocorra como esperado, sem erros, o fluxo de\ntrabalho do projeto será marcado como atualizado. O mesmo comando de\nvisualização do grafo de dependências usado anteriormente pode ser usado para\nchecar se os vértices estão atualizados:\n\n```{r, eval = FALSE}\ntar_visnetwork(targets_only = TRUE)\n```\n\n```{r, graph-updated, echo = FALSE}\nwidget \u003c- tar_visnetwork(targets_only = TRUE)\n\ntmp_widget \u003c- tempfile(fileext = \".html\")\nvisNetwork::visSave(widget, tmp_widget)\n\ntmp_image \u003c- tempfile(fileext = \".png\")\nwebshot::webshot(tmp_widget, file = tmp_image)\n```\n\n## Ambiente de trabalho\n\n\u003cdetails\u003e\n\u003csummary\u003eClique aqui para ver as informações do ambiente de trabalho utilizado\nno desenvolvimento do projeto.\u003c/summary\u003e\n```{r}\ninfo \u003c- sessioninfo::session_info()\ninfo$packages$library \u003c- NULL\n\ninfo\n```\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fipeagit%2Fpadronizacao_cnefe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fipeagit%2Fpadronizacao_cnefe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fipeagit%2Fpadronizacao_cnefe/lists"}