geocodebr

Geolocalização de Endereços Brasileiros (Geocoding Brazilian Addresses)

https://github.com/ipeagit/geocodebr

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.3%) to scientific vocabulary

Keywords

brazil cnefe geocoding r

Keywords from Contributors

public-transport
Last synced: 4 months ago · JSON representation

Repository

Geolocalização de Endereços Brasileiros (Geocoding Brazilian Addresses)

Basic Info
Statistics
  • Stars: 43
  • Watchers: 4
  • Forks: 3
  • Open Issues: 13
  • Releases: 0
Topics
brazil cnefe geocoding r
Created over 1 year ago · Last pushed 4 months ago
Metadata Files
Readme Changelog License Codemeta

README.Rmd

---
output: github_document
---



```{r, include = FALSE}
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "man/figures/README-",
  out.width = "100%"
)
```

# geocodebr: Geolocalização de Endereços Brasileiros 

[![CRAN
status](https://www.r-pkg.org/badges/version/geocodebr)](https://CRAN.R-project.org/package=geocodebr) 
[![CRAN/METACRAN Total downloads](https://cranlogs.r-pkg.org/badges/grand-total/geocodebr?color=blue)](https://CRAN.R-project.org/package=geocodebr)
[![check](https://github.com/ipeaGIT/geocodebr/workflows/check/badge.svg)](https://github.com/ipeaGIT/geocodebr/actions)
[![Codecov test
coverage](https://codecov.io/gh/ipeaGIT/geocodebr/branch/main/graph/badge.svg)](https://app.codecov.io/gh/ipeaGIT/geocodebr?branch=main)
[![Lifecycle:
experimental](https://lifecycle.r-lib.org/articles/figures/lifecycle-experimental.svg)](https://lifecycle.r-lib.org/articles/stages.html) 

O **{geocodebr}** é um pacote computacional para geolicalização de endereços Brasileiros. O pacote oferece uma maneira simples e eficiente de geolocalizar 
dados sem limite de número de consultas. O pacote é baseado em conjuntos de dados espaciais abertos de endereços brasileiros, utilizando como fonte principal o Cadastro Nacional de Endereços para Fins Estatísticos (CNEFE). O CNEFE é 
[publicado](https://www.ibge.gov.br/estatisticas/sociais/populacao/38734-cadastro-nacional-de-enderecos-para-fins-estatisticos.html) pelo Instituto Brasileiro de Geografia e Estatística (IBGE). Atualmente, o pacote está disponível apenas em R.


## Instalação

A última versão estável pode ser baixada do CRAN com o comando a seguir:

```r
# from CRAN
install.packages("geocodebr")
```

Caso prefira, a versão em desenvolvimento:
```r
# install.packages("remotes")
remotes::install_github("ipeaGIT/geocodebr")
```

## Utilização

O {geocodebr} possui três funções principais para geolocalização de dados:

1. `geocode()`
2. `geocode_reverso()`
3. `busca_por_cep()`


### 1. Geolocalização: de endereços para coordenadas espaciais

Uma que você possui uma tabela de dados (`data.frame`) com endereços no Brasil, a geolocalização desses dados pode ser feita em apenas dois passos:

1. O primeiro passo é usar a função `definir_campos()` para indicar os nomes das colunas no seu `data.frame` que correspondem a cada campo dos endereços.

2. O segundo passo é usar a função `geocode()` para encontrar as coordenadas geográficas dos endereços de input.


```{r, eval=TRUE}
library(geocodebr)
library(sf)

# carregando uma amostra de dados
input_df <- read.csv(system.file("extdata/small_sample.csv", package = "geocodebr"))

# Primeiro passo: inidicar o nome das colunas com cada campo dos enderecos
campos <- geocodebr::definir_campos(
  logradouro = "nm_logradouro",
  numero = "Numero",
  cep = "Cep",
  localidade = "Bairro",
  municipio = "nm_municipio",
  estado = "nm_uf"
  )

# Segundo passo: geolocalizar
df <- geocodebr::geocode(
  enderecos = input_df,
  campos_endereco = campos,
  resultado_completo = FALSE,
  resolver_empates = FALSE,
  resultado_sf = FALSE,
  verboso = FALSE,
  cache = TRUE,
  n_cores = 1
  )

```

Os resultados do **{geocodebr}** são classificados em seis categorias gerais de `precisao`, dependendo do nível de exatidão com que cada endereço de input foi encontrado nos dados do CNEFE. Para mais informações, consulte a documentação da função ou a [**vignette "geocode"**](https://ipeagit.github.io/geocodebr/articles/geocode.html).


### 2. Geolocalização reversa: de coordenadas espaciais para endereços

A função `geocode_reverso()`, por sua vez, permite a geolocalização reversa, ou seja, a busca de endereços próximos a um conjunto de coordenadas geográficas. A função pode ser útil, por exemplo, para identificar endereços próximos a pontos de interesse, como escolas, hospitais, ou locais de acidentes.

Mais detalhes na [**vignette "geocode"**](https://ipeagit.github.io/geocodebr/articles/geocode_reverso.html).

```{r, eval=TRUE}
# amostra de pontos espaciais
pontos <- readRDS(
   system.file("extdata/pontos.rds", package = "geocodebr")
   )

pontos <- pontos[1:20,]

# geocode reverso
df_enderecos <- geocodebr::geocode_reverso(
 pontos = pontos,
 dist_max = 1000,
 verboso = FALSE,
 n_cores = 1
 )

```
### 3. Busca por CEPs

Por fim, a função `busca_por_cep()` permite fazer consultas de CEPs para encontrar endereços associados a cada CEP e suas coordenadas espaciais.

```{r, eval=TRUE}
# amostra de CEPs
ceps <- c("70390-025", "20071-001")

df_ceps <- geocodebr::busca_por_cep(
 cep = ceps,
 resultado_sf = FALSE,
 verboso = FALSE
 )
```


## Nota IPEA

Os dados originais do CNEFE são coletados pelo Instituto Brasileiro de Geografia e Estatística (IBGE). O **{geocodebr}** foi desenvolvido por uma equipe do Instituto de Pesquisa Econômica Aplicada (Ipea)


## Instituições utilizando o {geocodebr}

Além de diversos pesquisadores e empresas que utilizam o {geocodebr}, o pacote também tem sido utilizado oficialmente por algumas instituições públicas no planejamento e avaliação de políticas públicas. Entre elas:

- Banco Central do Brasil
- Ministério do Desenvolvimento Social e Combate à Fome (MDS)


## Projetos relacionados

Existem diversos pacotes de geolocalização disponíveis, muitos dos quais podem ser utilizados em R (listados abaixo). A maioria dessas alternativas depende de softwares e conjuntos de dados comerciais, geralmente impondo limites de número de consultas gratuitas. Em contraste, as principais vantagens do **{geocodebr}** são que o pacote: (a) é completamente gratuito, permitindo consultas ilimitadas sem nenhum custo; (b) opera com alta velocidade e escalabilidade eficiente, permitindo geocodificar milhões de endereços em apenas alguns minutos, sem a necessidade de infraestrutura computacional avançada ou de alto desempenho.

- [{arcgisgeocode}](https://cran.r-project.org/package=arcgisgeocode) and [{arcgeocoder}](https://cran.r-project.org/package=arcgeocoder): utiliza serviço de geocode do ArcGIS
- [{nominatimlite}](https://cran.r-project.org/package=nominatimlite): baseado dados do OSM
- [{photon}](https://cran.r-project.org/package=photon): baseado dados do OSM
- [{tidygeocoder}](https://cran.r-project.org/package=tidygeocoder): API para diversos servicos de geolocalização
- [{googleway}](https://cran.r-project.org/package=googleway) and [{mapsapi}](https://cran.r-project.org/package=mapsapi): interface para API do Google Maps


Owner

  • Name: IpeaDIRUR
  • Login: ipeaGIT
  • Kind: organization

CodeMeta (codemeta.json)

{
  "@context": "https://doi.org/10.5063/schema/codemeta-2.0",
  "@type": "SoftwareSourceCode",
  "identifier": "geocodebr",
  "description": "Enables one to geocode Brazilian addresses and to reverse geocode spatial coordinates using the National Registry of Addresses for Statistical Purposes (english for Cadastro Nacional de Endereos para Fins Estatsticos, - CNEFE). CNEFE is published by the Brazilian official statistics and geography office, IBGE (<https://www.ibge.gov.br/estatisticas/sociais/populacao/38734-cadastro-nacional-de-enderecos-para-fins-estatisticos.html>).",
  "name": "geocodebr: Geocode Brazilian Addresses with CNEFE",
  "relatedLink": "https://ipeagit.github.io/geocodebr/",
  "codeRepository": "https://github.com/ipeaGIT/geocodebr",
  "issueTracker": "https://github.com/ipeaGIT/geocodebr/issues",
  "license": "https://spdx.org/licenses/MIT",
  "version": "0.0.0.9000",
  "programmingLanguage": {
    "@type": "ComputerLanguage",
    "name": "R",
    "url": "https://r-project.org"
  },
  "runtimePlatform": "R version 4.4.2 (2024-10-31 ucrt)",
  "author": [
    {
      "@type": "Person",
      "givenName": "Daniel",
      "familyName": "Herszenhut",
      "email": "dhersz@gmail.com",
      "@id": "https://orcid.org/0000-0001-8066-1105"
    },
    {
      "@type": "Person",
      "givenName": "Rafael H. M.",
      "familyName": "Pereira",
      "@id": "https://orcid.org/0000-0003-2125-7465"
    }
  ],
  "copyrightHolder": [
    {
      "@type": "Organization",
      "name": "Ipea - Institute for Applied Economic Research"
    }
  ],
  "funder": [
    {
      "@type": "Organization",
      "name": "Ipea - Institute for Applied Economic Research"
    }
  ],
  "maintainer": [
    {
      "@type": "Person",
      "givenName": "Daniel",
      "familyName": "Herszenhut",
      "email": "dhersz@gmail.com",
      "@id": "https://orcid.org/0000-0001-8066-1105"
    }
  ],
  "softwareSuggestions": [
    {
      "@type": "SoftwareApplication",
      "identifier": "covr",
      "name": "covr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=covr"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "DBI",
      "name": "DBI",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=DBI"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "dbplyr",
      "name": "dbplyr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=dbplyr"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "duckdb",
      "name": "duckdb",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=duckdb"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "geobr",
      "name": "geobr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=geobr"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "ggplot2",
      "name": "ggplot2",
      "version": ">= 3.3.1",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=ggplot2"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "knitr",
      "name": "knitr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=knitr"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "rmarkdown",
      "name": "rmarkdown",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=rmarkdown"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "scales",
      "name": "scales",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=scales"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "testthat",
      "name": "testthat",
      "version": ">= 3.0.0",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=testthat"
    }
  ],
  "softwareRequirements": {
    "1": {
      "@type": "SoftwareApplication",
      "identifier": "R",
      "name": "R",
      "version": ">= 4.1.0"
    },
    "2": {
      "@type": "SoftwareApplication",
      "identifier": "arrow",
      "name": "arrow",
      "version": ">= 15.0.1",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=arrow"
    },
    "3": {
      "@type": "SoftwareApplication",
      "identifier": "checkmate",
      "name": "checkmate",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=checkmate"
    },
    "4": {
      "@type": "SoftwareApplication",
      "identifier": "cli",
      "name": "cli",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=cli"
    },
    "5": {
      "@type": "SoftwareApplication",
      "identifier": "data.table",
      "name": "data.table",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=data.table"
    },
    "6": {
      "@type": "SoftwareApplication",
      "identifier": "dplyr",
      "name": "dplyr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=dplyr"
    },
    "7": {
      "@type": "SoftwareApplication",
      "identifier": "enderecobr",
      "name": "enderecobr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=enderecobr"
    },
    "8": {
      "@type": "SoftwareApplication",
      "identifier": "fs",
      "name": "fs",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=fs"
    },
    "9": {
      "@type": "SoftwareApplication",
      "identifier": "glue",
      "name": "glue",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=glue"
    },
    "10": {
      "@type": "SoftwareApplication",
      "identifier": "httr2",
      "name": "httr2",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=httr2"
    },
    "11": {
      "@type": "SoftwareApplication",
      "identifier": "parallel",
      "name": "parallel"
    },
    "12": {
      "@type": "SoftwareApplication",
      "identifier": "pbapply",
      "name": "pbapply",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=pbapply"
    },
    "13": {
      "@type": "SoftwareApplication",
      "identifier": "purrr",
      "name": "purrr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=purrr"
    },
    "14": {
      "@type": "SoftwareApplication",
      "identifier": "rlang",
      "name": "rlang",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=rlang"
    },
    "15": {
      "@type": "SoftwareApplication",
      "identifier": "tibble",
      "name": "tibble",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=tibble"
    },
    "16": {
      "@type": "SoftwareApplication",
      "identifier": "tools",
      "name": "tools"
    },
    "17": {
      "@type": "SoftwareApplication",
      "identifier": "utils",
      "name": "utils"
    },
    "18": {
      "@type": "SoftwareApplication",
      "identifier": "zip",
      "name": "zip",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=zip"
    },
    "SystemRequirements": null
  },
  "fileSize": "213.314KB",
  "citation": [
    {
      "@type": "SoftwareSourceCode",
      "datePublished": "2024",
      "author": [
        {
          "@type": "Person",
          "givenName": [
            "Rafael",
            "H.",
            "M."
          ],
          "familyName": "Pereira"
        }
      ],
      "name": "geocodebr: Download Data from Brazil's Population Census"
    }
  ],
  "releaseNotes": "https://github.com/ipeaGIT/geocodebr/blob/master/NEWS.md",
  "readme": "https://github.com/ipeaGIT/geocodebr/blob/main/README.md",
  "contIntegration": [
    "https://github.com/ipeaGIT/geocodebr/actions",
    "https://app.codecov.io/gh/ipeaGIT/geocodebr?branch=main"
  ],
  "developmentStatus": "https://lifecycle.r-lib.org/articles/stages.html"
}

GitHub Events

Total
  • Create event: 5
  • Release event: 3
  • Issues event: 88
  • Watch event: 35
  • Delete event: 2
  • Issue comment event: 114
  • Push event: 278
  • Public event: 2
  • Pull request event: 6
  • Fork event: 2
Last Year
  • Create event: 5
  • Release event: 3
  • Issues event: 88
  • Watch event: 35
  • Delete event: 2
  • Issue comment event: 114
  • Push event: 278
  • Public event: 2
  • Pull request event: 6
  • Fork event: 2

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 322
  • Total Committers: 3
  • Avg Commits per committer: 107.333
  • Development Distribution Score (DDS): 0.205
Past Year
  • Commits: 322
  • Committers: 3
  • Avg Commits per committer: 107.333
  • Development Distribution Score (DDS): 0.205
Top Committers
Name Email Commits
rafapereirabr r****r@g****m 256
Daniel Herszenhut d****z@g****m 64
Rafael Henrique Moraes Pereira R****7@i****r 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 54
  • Total pull requests: 7
  • Average time to close issues: 26 days
  • Average time to close pull requests: less than a minute
  • Total issue authors: 16
  • Total pull request authors: 2
  • Average comments per issue: 1.7
  • Average comments per pull request: 0.0
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 54
  • Pull requests: 7
  • Average time to close issues: 26 days
  • Average time to close pull requests: less than a minute
  • Issue authors: 16
  • Pull request authors: 2
  • Average comments per issue: 1.7
  • Average comments per pull request: 0.0
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • rafapereirabr (32)
  • baarthur (3)
  • dhersz (3)
  • marcofaga (2)
  • lgelape (2)
  • gigioLR (2)
  • aamandapena (1)
  • eriveltonguedes (1)
  • leisekoliveira (1)
  • diegospinoza (1)
  • bernardoperrotti (1)
  • denis-or (1)
  • Aciole-David (1)
  • davi-dmittelstadt (1)
  • Laurentlsantos (1)
Pull Request Authors
  • rafapereirabr (6)
  • PedroMilreuCunha (1)
Top Labels
Issue Labels
priority (4) v0.2.0 (1) enhancement (1) bug (1) Python (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • cran 483 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 4
  • Total maintainers: 1
cran.r-project.org: geocodebr

Geolocalização De Endereços Brasileiros (Geocoding Brazilian Addresses)

  • Versions: 4
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 483 Last month
Rankings
Dependent packages count: 27.2%
Dependent repos count: 33.5%
Average: 49.2%
Downloads: 86.9%
Maintainers (1)
Last synced: 4 months ago