Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Limpar, preparar e analisar dados em Python

Limpar, preparar e analisar dados em Python

Hildeberto

April 27, 2019
Tweet

More Decks by Hildeberto

Other Decks in Technology

Transcript

  1. Relação pessoal e profissional com TI • 8 bits -

    Autodidata (1989 a 1991) ◦ PC, Clipper, Pascal, Dbase • 16 bits - Aprendendo no Trabalho (1992 a 2001) ◦ Mainframe, Cobol, CSP, SQL ◦ Redes locais, Windows, Unix, Linux, DB Oracle, Delphi • 32 bits - Graduação (2002 a 2006) ◦ Internet, Ciências da Computação, Paradigmas, C, Java, MySQL, PostgreSQL • Gerente de desenvolvimento de sistemas (2007 a 2011) ◦ Metodologia, Gestão de Processos, Frameworks, Gestão de projetos, Governança • 64 bits - Mudança para Área de Recursos Humanos (desde 2012) ◦ MBA em gestão de Projetos (2016) ◦ Cloud computing, virtual servers, containers, Python, Dev Web (web2py, django, flask) ◦ Data Science, IoT, IA, Machine Learning, Deep Learning
  2. Grupo de Usuários Python na Paraíba (PUG/PB) • Promover a

    integração entre desenvolvedores, entusiastas e demais interessados na linguagem • Fomentar e difundir o uso nas empresas e faculdades • Organizar eventos para multiplicar conhecimento • Compartilhar experiências e projetos • Contribuir com a comunidade nacional e internacional
  3. Áreas de aplicação da linguagem Python • Qualquer situação que

    necessite automação de tarefas repetíveis • Desenvolvimento para janelas (Windows, Linux, Android, iOS) • Desenvolvimento web (backend, frontend) • Análise de imagens, vídeos e textos • Ciência de dados, Inteligência artificial, aprendizado de máquina • Química, biologia, matemática, estatística, jornalismo, ciências sociais • Devops, Integração contínua, Entrega contínua • Testes de software • E outras inúmeras possibilidades...
  4. Ciência de Dados - Wikipedia A ciência de dados é

    um campo multidisciplinar que utiliza métodos, processos, algoritmos e sistemas científicos para extrair conhecimento de dados estruturados e não estruturados. A ciência de dados "usa o hardware e os sistemas de programação mais poderosos, além dos algoritmos mais eficientes para resolver problemas". A ciência de dados é um "conceito para unificar estatísticas, análise de dados, aprendizado de máquina e seus métodos relacionados" para "entender e analisar fenômenos reais" através de dados. Emprega técnicas e teorias extraídas de muitos campos dentro do contexto da matemática, estatística, ciência da informação e ciência da computação.
  5. Interdisciplinaridade • Habilidades de estatístico: modelar e resumir conjuntos de

    dados (que estão se tornando cada vez maiores); • Habilidades de cientista da computação: projetar e usar algoritmos para armazenar, processar e visualizar dados com eficiência; • Especialização de domínio: treinamento "clássico" em um assunto - necessário tanto para formular as perguntas certas como para colocar respostas no contexto.
  6. Exemplos de problemas • Análise de dados genéticos para prevenção

    de doenças • Detecção de padrões de comportamento físico e/ou digital • Descoberta de doenças e tratamentos • Aprovação de crédito, detecção de fraudes • Previsão de inadimplência • Otimização de produção, estocagem, fluxo de entregas • Desempenho de marca ou produto • Análise preditiva de evasão escolar • Alocação de recursos humanos em projetos
  7. Metodologia básica sugerida (adaptado do DSM - Data Science Method)

    1. Identificar o problema e a métrica de sucesso (ou critério de aceitação) 2. Coletar e organizar o conjunto de dados a ser utilizado 3. Transformação e higienização dos dados (data cleaning) 4. Análise exploratória dos dados 5. Modelagem da solução 6. Comunicação dos resultados encontrados
  8. Os 8 princípios dos dados abertos • Completo Todos os

    dados públicos devem ser disponibilizados. Dados públicos são dados que não estão sujeitos a restrições de privacidade, segurança ou privilégios de acesso. • Primários Os dados devem ser coletados na fonte com o maior nível de detalhamento possível, e não de forma agregada ou modificada. • Oportunidade Sua disponibilidade deve ser feita tão rapidamente quanto necessário para preservar o valor dos dados. • Acessibilidade Os dados devem estar disponíveis para a mais ampla gama de usuários e as mais diversas finalidades.
  9. Os 8 princípios dos dados abertos • Processável por máquinas

    Os dados devem ser razoavelmente estruturados de modo a permitir o processamento automatizado. • Não-discriminatório Os dados devem estar disponíveis para qualquer pessoa, sem necessidade de registro. • Não-proprietário Os dados devem estar disponíveis em um formato sobre o qual nenhuma entidade tem o controle exclusivo. • Licença livre Os dados não estão sujeitos a quaisquer direitos de autor, patentes, marcas comerciais ou regulamento secreto. Pode ser permitida uma razoável privacidade e restrições de privilégio e segurança.
  10. Dados abertos - problemas • Achar sites que disponibilizam informações,

    mas que não possibilitam o download dos dados consolidados, fazendo com que seja necessário criar um programa que acesse o site automaticamente. • Encontrar informações disponibilizadas em formato PDF (não estruturado) em vez de em formato de planilha eletrônica. • Ter planilhas disponíveis em formatos fechados (XLS e XLSX) em vez de abertos (CSV e ODS). • Acessar páginas que disponibilizam um grande número de arquivos (por exemplo, um arquivo para cada unidade federativa) em vez de um único arquivo consolidado, o que dificulta bastante as análises globais.
  11. Transformação e higienização • Facilitar a exploração, o entendimento e

    a modelagem • Filtrar: ◦ Retirar partes que não precisa ou não quer (dados irrelevantes) ◦ Decidir o que fazer com dados faltando (apagar, preencher, etc) ◦ Decidir o que fazer com dados anômalos (outliers) ◦ Retirar dados duplicados • Modificar: ◦ Formatar dados que não estão na forma adequada para usar ◦ Padronizar dados (maiúsculos, minúsculos, com erros de digitação) ◦ Categorizar dados numéricos
  12. Análise exploratória • Explorar o conjunto de dados para conhecê-lo

    • Sumarizar características principais • Verificar o que os dados podem nos dizer sobre o modelo formal a ser utilizado • Testar hipóteses • Encontrar padrões
  13. Referências em Português • Pizza de dados (revista, podcast): https://pizzadedados.com/

    • Guia do Cientista de Dados das Galáxias: https://guia.pizzadedados.com • Escola de Dados: https://escoladedados.org/ • Colaboradados: https://colaboradados.github.io/ • InternetLab: http://www.internetlab.org.br/pt/ • Grupo no Telegram - Python e Data Science: https://t.me/datasciencepython • Cerveja com Dados: https://www.meetup.com/pt-BR/Cerveja-com-Dados/ • Dados Abertos (Wikipedia): https://pt.wikipedia.org/wiki/Dados_abertos • Transparência Brasil: https://www.transparencia.org.br/ • Open Knowledge Brasil: https://br.okfn.org/ • Bingo dos Dados Abertos: https://campagnucci.github.io/opendatabingo/ • Operação Serenata de Amor: https://serenata.ai/ • Brasil.IO (dados libertos): https://brasil.io/home • Datasets do Brasil.IO: https://brasil.io/datasets • Manifesto pelos Dados Abertos: https://brasil.io/manifesto • Dados abertos da Câmara Federal: https://dadosabertos.camara.leg.br/ • Portal Brasileiro de Dados Abertos: http://dados.gov.br/
  14. Referências em Português • 150 dicas para o trabalho com

    dados - Parte I: https://escoladedados.org/2018/07/150-dicas-para-o-trabalho-com-dados-parte-i-ferramen tas/ • Um breve estudo sobre outliers (dados anômalos): https://leportella.com/pt-br/2018/01/08/um-breve-estudo-sobre-outliers.html • 10 truques de pandas que fazem o seu trabalho mais eficiente: https://medium.com/@joaogabrielzo/10-truques-de-pandas-que-fazem-o-seu-trabalho-mais- eficiente-95a265d32233 • As principais ferramentas de desenvolvimento em ciência de dados: https://medium.com/pizzadedados/ferramentas-desenvolvimento-ciencia-dados-c54d1128 71d8
  15. Referências em Inglês • Data Values and Principles: https://datapractices.org/ •

    The Data Science Method DSM: https://medium.com/datadriveninvestor/the-data-science-method-dsm-a-framework-on-ho w-to-take-your-data-science-projects-to-the-next-91f9fd81e5d1 • Invent with Python (free e-books): http://inventwithpython.com/ • The Python Data Science Handbook (free e-book): https://jakevdp.github.io/PythonDataScienceHandbook/ • Think Stats (free e-book): http://greenteapress.com/wp/think-stats-2e/ • Top Free Data Science Books: https://www.wintellect.com/top-free-data-science-books/ • The 50 Best Free Datasets for Machine Learning: https://gengo.ai/datasets/the-50-best-free-datasets-for-machine-learning/ • Datasets for data cleaning practices: https://makingnoiseandhearingthings.com/2018/04/19/datasets-for-data-cleaning-practice • Portal 538 (ABC News): https://data.fivethirtyeight.com/ • Informações sobre países (Restful API): https://restcountries.eu/ • Datasets for data science and machine learning projects: https://elitedatascience.com/datasets • Fundamental of Data Visualization (free e-book): https://serialmentor.com/dataviz/
  16. Referências em Inglês • Fundamental of Data Visualization (free e-book):

    https://serialmentor.com/dataviz/ • The Art of Cleaning your Data: https://towardsdatascience.com/the-art-of-cleaning-your-data-b713dbd49726 • Storytelling with data: http://www.storytellingwithdata.com/ • Iodide/Pyodide: https://alpha.iodide.io/notebooks/300/ • Pyodide Demo: https://alpha.iodide.io/notebooks/222/ • Master Data Analysis with Python - Intro to pandas (free online course): https://online.dunderdata.com/courses/master-data-analysis-with-python-intro-to-pandas • Open Government Working Group: https://public.resource.org/open_government_meeting.html • Open Knowledge: https://okfn.org/ • Open Corporates: https://opencorporates.com/ • Python libraries: https://opensource.com/article/18/11/python-libraries-data-science • Extracting and transforming Data in Python: https://towardsdatascience.com/extracting-and-transforming-data-in-python-63291f63d350
  17. Obrigado. Perguntas? [email protected] https://github.com/hilam https://dev.to/hilam Twitter: @__hilam__ PUG/PB: https://pb.python.org.br https://github.com/pug-pb

    https://groups.google.com/forum/#!forum/pug-pb Telegram: https://t.me/pugpb Slack: http://grudepb.slack.com/ (Canal #pug-pb) Palestra disponível em https://speakerdeck.com/hilam/limpar-preparar-e-analisar-dados -em-python