PyFuncemeClimateTools
Análise de dados científicos usando Python.
Marcelo Rodrigues
marcelorodriguesss@gmail.com
IX PYlestras – Fortaleza – 2015
ABOUT ME
• Marcelo Rodrigues
• Analista de sistemas (Funceme)
• Professor Faculdade Evolução
• Tecnólogo em Redes de Computadores
• Mestre em Ciências Físicas Aplicadas
SUMÁRIO
• ARQUITETURA DADOS CIENTÍFICOS;
• NECESSIDADES;
• FERRAMENTAS;
• DIFICULDADES;
• DESAFIOS;
• PYTHON NA COMUNIDADE CIENTÍFICA;
• PYTHON PERFORMANCE;
• FERRAMENTAS PYTHON;
• PyFuncemeClimateTools;
• PRODUTOS;
ORIGEM DOS DADOS:
• Modelos de previsão de tempo;
• Modelos de previsão de clima;
• Estações meteorológicas;
• Satélites;
• Radares;
DADOS EM GRADE:
ARQUITETURA DOS DADOS:
FORMATO DOS DADOS CIENTÍFICOS:
• NetCDF - network Common Data Form.
• Grib - GRIdded Binary or General Regularly-
distributed Information in Binary form.
• HDF5 - Hierarchical Data Format.
• GeoTIFF
• ASCII
• Binário (Ex. Fortran, Matlab…)
• SIGMET
• Planilhas (XLS, CSV)
NECESSIDADES:
• Plotar mapas meteorológicos;
• Plotar gráficos (barras, histogramas, dispersão,
boxplots, etc)
• Salvar dados nos formatos científicos:
– NetCDF, Grib, HDF5, ASCII, Planilhas eletrônicas
• Fazer análises estatísticas e probabilísticas;
• Georreferenciamento;
• Precisão dos resultados;
FERRAMENTAS:
- Mais info: http://www.unidata.ucar.edu/software/netcdf/software.html
CDO
GrADS
DIFICULDADES:
• Padronizar scritps, paletas de cores, equações
matématicas, etc;
• Centralizar metodologias e técnicas usadas;
• Distribuição das ferramentas;
• Vários softwares instalados;
• Diferentes versões dos softwares usados;
• Compilação de vários programas;
• Ensinar todas as técnicas utilizadas nos diferentes
softwares;
EXEMPLO:
• Gerar produtos do radar:
– Códico em C (Ler os dados brutos);
– Código em Fortran (Gerar os produtos);
– Shell Script (Juntar e executar tudo);
– Dificuldade de manutenção;
– Sem conexão com banco de dados;
DESAFIOS:
• Adotar uma ferramenta:
– Open Source;
– Multi-plataforma;
– Conexão com bancos de dados;
– Plotar gráficos;
– Plotar mapas;
– Desenvolvimento ágil;
– Módulos para estatísticas;
– Módulos para probabilidades;
– Transferência de arquivos pela rede;
– Envio de e-mails;
SOLUÇÃO?
• Desenvolver essa ferramenta!
QUAL LINGUAGEM USAR?
• Características da linguagem:
– Fácil aprendizado;
– Syntax simples;
– Facilidade para incluir novas funcionalidades;
– Multi-plataforma;
– Documentação acessível;
– Open Source;
PYTHON NA COMUNIDADE CIENTÍFICA
• Muitos módulos científicos já existem internet a
fora que desobrigam o cientista do trabalho de
reinventar a roda. E, devido à sua sintaxe clara, o
uso desses módulos é extremamente simples, o
que libera o cientista para tarefas mais
interessantes que se digladiar com o
computador em busca de resultados
minimamente corretos, e diminui as dúvidas
sobre as análises feitas.
LEITURA NETCDF
FORTRAN
PYTHON
PYTHON PERFORMANCE:
MATLAB R2010b Python (PyPY)
http://stackoverflow.com/questions/30475410/is-matlab-faster-than-python-little-simple-experiment
PYTHON PERFORMANCE:
https://modelingguru.nasa.gov/docs/DOC-1762
PYTHON PERFORMANCE:
https://modelingguru.nasa.gov/docs/DOC-1762
PYTHON PERFOMANCE:
https://lbolla.wordpress.com/2007/04/11/numerical-computing-matlab-vs-pythonnumpyweave/
FERRAMENTAS EM PYTHON:
• Numpy
• Scipy
• Matplotlib
• Pupynere
• Pydap
• Pandas
• Cartopy
• PyTables
• IRIS
• PyGrib
• etc
OUTROS CENTROS DE PESQUISA:
• Python + = PyFerret
• Python + = PyGrADS
PyFuncemeClimateTools
• Ferramenta desenvolvida pela Funceme;
• Conjunto de bibliotecas Python (Numpy, Scipy,
Matplotlib, etc)
• O objetivo da ferramenta é padronizar as
metodologias usadas internamente na criação de
produtos da Funceme;
• Pode ser aplicada em análises fora da Funceme,
para isso basta os dados estarem no formato
científico.
• Fácil instalação.
GITLAB:
INSTALAÇÃO
SCRIPT
http://www3.funceme.br/app/previsao-climatica
PRODUTOS:
PRODUTOS:
DESENVOLVIMENTO ATUAL:
• Análises estatísticas:
– Mapas: Anomalia, Correlação, Erro quadrático
médio, Viés e Devio padrão.
– Gráficos: Histograma, Dispersão, Probabilidade,
Reliability e ROC.
• Ler e escreve NetCDF
• Ler e escreve ASCII
SUGESTÕES?
PERGUNTAS?
OBRIGADO!
Marcelo Rodrigues
marcelorodriguesss@gmail.com

PyFuncemeClimateTools

Notas do Editor

  • #10 Softwares
  • #11 Dificuldades por trabalhar com tantas ferramentas