Antes de seguir à prática convém examinar qual ferramental venho
utilizando e quais caminhos trilhar para se municiar para as atividades
que serão acompanhadas aqui.
Apesar de existirem programas com
interface gráfica, feitos especificamente para algumas poucas operações
com estatísticas espaciais, minha experiência e aprendizado tem sido em
cima da linguagem de programação Python:
Python is an interpreted, object-oriented, high-level programming language with dynamic semantics. http://www.python.org
Que
foi a forma que me sugeriram de retomar a experiência com programação,
iniciada com curso de lógica de programação e banco de dados, lá nos
idos de 2003, por se tratar de uma linguagem (scripting)
simples com uma curva de aprendizado muito rápida, o que não só facilita
o aprendizado como minimiza o tempo de criação e manutenção dos
códigos.
Além
disso, apesar de não ser uma linguagem estatística tal qual o S (SAS), R
(R-Project) ou outras, conta com um grande número de bibliotecas
voltadas para a produção científica, conforme o tamanho desta comunidade
cresce. Convém observar que dois dos principais sistemas de informação
geográficas (SIGs ou GIS - Geographic Information Systems) utilizam do
core python para executar diversas rotinas, integração que simplifica
nosso trabalho quando tratamos de dados geográficos, seja para
carregamento ou visualização de dados.
Seguem as principais ferramentas utilizadas:
- Numpy - Biblioteca matemática do Python, conta com diversas operações semelhantes ao Matlab ou Octave;
- Fiona - Biblioteca para manipulação de arquivos
geográficos, como abertura, fechamento, escrita e atualização dos dados
geográficos em arquivos apropriados para a leitura pelos SIGs;
- Shapely - Biblioteca que permite o tratamento das informações
puramente geográficas, como coordenadas, polígonos, linhas e outras,
transformando para formato próprio para uso com os arquivos manipulados
com o Fiona;
- Pysal
- Biblioteca que contém diversos métodos de estatísticas e econometria
espaciais, realizado pela equipe do Dr. Luc Anselin (GEODA) e Dr. Sergio
Rey (STARS), que juntaram esforços nesta área para produzir esta
biblioteca.
As versões do python seguem duas linhas
diversas: 2.7 e 3.3, para o qual compete ao 3.3 grandes avanços em
termos de processamento e da linguagem como um todo, porém, como a
biblioteca Pysal somente está adequada ao uso com a linha 2.7, é esta a
versão que devemos baixar para o uso nos exemplos deste blog.
Por simplicidade eu costumo utilizar uma distribuição python voltada especificamente para comunidade científica denominada
winpython,
que já conta com muitas das bibliotecas que você poderia vir a usar
para produção de material científico. Neste caso em específico, cabe
adicionar as bibliotecas Fiona, Shapely e Pysal, no que eu sugiro baixar
do site a seguir, ao contrário da instalação por linha de comando, que
apesar de simples não vou me ater aqui:
http://www.lfd.uci.edu/~gohlke/
Ainda,
se não for do interesse a instalação destes pacotes, podem ser feitas
quaisquer operações indicadas aqui pelo ambiente virtual PythonAnywhere,
serviço que já inclui todas as bibliotecas utilizadas em qualquer
momento deste site:
Sendo
o principal deste serviço que, além da simplificação de já possuir
todas as bibliotecas necessárias para qualquer exemplo, permite a
criação de sessões compartilhadas (para quem estiver logado no site)
para que possa ser feita a discussão ou acompanhamento de um determinado
exercício ou outro.