[1/2] Uma breve introdução à análise espacial com GeoPandas

Gustavo Machado
Computando Arte
Published in
4 min readApr 4, 2021
Foto de Clay Banks — Unsplash

Nesse artigo vamos abordar os seguintes assuntos:

  • O que é análise espacial;
  • Possíveis aplicações;
  • Rápida introdução ao GeoPandas.

1. O Que, Como e Onde

Análise espacial pode ser entendida como sendo o estudo das propriedades topológicas, geométricas ou geográficas de um local qualquer.

Se você está na área de ciência de dados ou analytics, muito provavelmente em algum momento você vai se deparar com a necessidade de realizar algum tipo de análise espacial. Seja para resolver um problema ou gerar variáveis para seu modelo.

Saber quantos concorrentes se tem em um determinado raio centrado nas suas lojas; Calcular a renda per capita, quantidade de pessoas em uma certa faixa etária ou salarial em determinadas regiões; Relacionar padrões de certos animais e áreas protegida; Identificar locais com maior concentração de uma certa doença [2], são alguns exemplos de problemas que o uso da análise espacial pode te ajudar a responder.

Existem diferentes formas e maneiras de se fazer essa análise. Nesse post, vamos falar sobre o GeoPandas. Caso queira ver mais sobre outras possibilidades, recomendo procurar por KNIME ou Alteryx [4], que são duas ferramentas excelentes para esse tipo de análise e Tableau para visualizar os seus resultados.

2.1 Geopandas

GeoPandas é uma biblioteca opensource do python desenvolvida para facilitar o trabalho com dados geoespaciais [1]. Permitindo fácil manipulação dos dados e visualização dos resultados.

Essa biblioteca faz uso das funcionalidades do pandas. Dessa forma, todos os comandos que você já conhece e utiliza do pandas funciona com ela. Tanto que suas principais estruturas de dados são: GeoSeries e GeoDataFrame (Te lembram algo? [5])

Para começar suas análises basta instalar e importar a biblioteca ;)

2.2 Tipos de Dados Espaciais

Existem diferentes formatos em que os dados geoespaciais podem aparecer para você em seus projetos. É possível ler facilmente a maioria deles com GeoPandas. O mais comum deles é shapefile (.shp), mas também temos: GeoJSON, KML e GPKG.

Os dados espaciais carregados dentro dos arquivos podem ter uma das seguintes “geometrias”:

  • Pontos
  • Linhas
  • Polígonos

Cada um desses tipos tem seus usos. Pontos podem representar locais de interesse, como por exemplo lojas, das quais queremos informações do entorno. Linhas podem representar trajetos, dessa forma, conseguimos, por exemplo, ver o caminho que certos pássaros fizeram durante seu período de migração. Com polígonos conseguimos, por exemplo, informações de estados, micro e mesorregiões [3]. Basicamente, o contorno e preenchimentos dos locais de interesse.

2.3 Sistema de Coordenadas

Outra coisa que deve ser levada em consideração é o tipo do sistema de coordenada dos seus dados. Isso influencia a projeção cartográfica que será utilizada nas suas análises.

O Geopandas utiliza o padrão definido pelo European Petroleum Survey Group (EPSG). Para saber mais sobre os possíveis sistemas de coordenadas visite o site.

Isso é bastante importante, pois cada cartografia tem suas características específicas, ou seja, foram feitas com um propósito em mente.

Por exemplo, se você utilizar a projeção de Mercator para calcular a área de uma região, seus resultados vão estar distorcidos. Ela foi desenhada para garantir que a forma seja mantida. Para isso o tamanho das formas precisa ser levemente alterado. Logo, ele é muito boa para ensino e navegação, mas não a melhor opção para se calcular tamanhos (áreas).

Algumas das possíveis projeções cartográficas disponíveis. (imagem)

Para saber o sistema de coordenada dos seus dados basta fazer o seguinte:

Com GeoPandas você pode facilmente mudar o sistema de coordenadas dos seus dados.

Normalmente quando lemos dados de um csv ou excel as informações espaciais que temos são de latitude e longitude. Nesses casos, precisamos “informar” para o código isso e transformar os dados em um GeoDataFrame.

Lemos o arquivo de csv normalmente com pandas, em seguida convertemos o DataFrama para um GeoDataFrame e por fim modificamos o sistema de coordenadas.

Transformando seu DataFrame em um GeoDataFrame

No final desse processo teremos um GeoDataFrame com todas as colunas do nosso DataFrame inicial, mas agora com uma coluna a mais, representando a geometria, que no caso serão pontos.

3. Conclusão

Análise espacial é muito interessante e com inúmeras aplicações. Saber por onde começar as vezes pode ser difícil, mas com GeoPandas isso se torna muito mais fácil.

Temos disponível uma biblioteca opensource e muito parecida com uma das mais usadas em python por qualquer cientista ou analista de dados.

Espero que com essa breve introdução ao assunto ideias tenham surgido e um possível caminho para lidar com elas tenha sido mostrado.

4. Próximo Passos

Na parte 2 iremos utilizar dados públicos e GeoPandas para realizar análises e visualizar os resultados em gráficos iterativos. Colocaremos em prática os conceitos que vimos até aqui e iremos nos aprofundar mais nas funcionalidades dessa incrível biblioteca.

--

--