Lendo arquivos OFX no R

Há um tempo atrás, a Nubank (se você não sabe o que é Nubank, deveria) postou em sua página que era possível exportar as faturas fechadas, para serem levadas a programas de organização financeira. Apesar de não usar nenhum programa do tipo, resolvi dar uma olhada no arquivo disponibilizado. Admito que esperava encontrar um arquivo amigável e de fácil manipulação no R, ou até mesmo no Excel. Mas o que encontrei foi um arquivo no formato OFX. 

Coletando dados do Facebook

Em nossas últimas postagens mostramos duas maneiras de extrair informações de sites: através do código fonte do site, manipulando diretamente no R e através do pacote RSelenium. Nesta postagem falaremos uma terceira maneira: o uso de API, exemplificando com a API do Facebook.

O Facebook permite que certos dados sejam coletados através da Graph API, permitindo com que a análise seja feita em qualquer linguagem de programação. O uso dela é bastante simples, bem documentado e possui um ambiente de teste, que permite formular e testar as querys a serem utilizadas. Agora, vamos aos exemplos!


Primeiros contatos com o RSelenium

Mostramos em nossa última postagem que é possível baixar dados/arquivos de sites através do R - o site em questão era bastante antigo e simples, o que facilitou a extração das informações desejadas. Mas e quando o site é mais complexo e necessita que algumas ações sejam feitas no site antes de baixar os dados? Recentemente me foi dada a tarefa de baixar todas as tabelas do Observatório do Trabalho de Porto Alegre - um site um pouco mais complexo, que utiliza javascript. E agora, como fazer?

A solução encontrada foi utilizar o pacote RSelenium, um pacote que permite a interação do R com um servidor Selenium, que é quem faz toda interação com o site, baseado em comandos executados no R. Com ele, é possível localizar elementos (botões, links, textos, ...) em sites através de seu id, nome, texto (e outras características) e simular clicks - também é possível a execução direta de scripts da página. A instalação do Selenium é bastante simples e pode ser feita pelo pacote do R através do comando checkForServer() - caso o comando falhe (como aconteceu comigo) você precisará baixar manualmente a versão standalone no site oficial e executar através do prompt - não tente fazer que nem eu e 'dezipar' o arquivo .jar.

Baixando e interpretando sites (ou: como fazer backup do seu fotolog) com R.

Se você usava a internet no início dos anos 2000, muito provavelmente teve - ou quis ter - um Fotolog. Como o próprio nome diz, era um blog voltado a fotografia, onde as pessoas podiam postar 1 foto por dia (ou 6, caso pagasse). Em 01/01/2016, o Fotolog encerrou suas atividades sem aviso prévio, gerando uma comoção nos mais saudosistas, voltando ao em final de janeiro com um aviso de que o site ficaria mais um mês online, permitindo que as pessoas fizessem backup. E agora que entra a parte de R da postagem.

Como já mostramos em outras postagens, o R é uma linguagem de programação bastante poderosa e versátil, podendo ser utilizada para coisas além da estatística. Por ser a única linguagem que eu domino (e por ter mais de 500 fotos no Fotolog), resolvi fazer uma função em R para fazer um backup dele, salvando foto, descrição e comentários. Pelo site ser bastante antigo, ele não possui uma API que facilitasse a minha vida, e com isso tive que interpretar a página do Fotolog com as ferramentas que o R disponibiliza, mais especificamente, com expressão regular.

Modelagem Preditiva: Aprendendo a partir dos dados

Em 2013 foi publicada uma reportagem pela Forbes onde era afirmado que machine learning era a disciplina mais popular de Stanford com 760 alunos inscritos. E o motivo pelo qual esta disciplina se tornou popular é simples: porquê machine learning funciona bem no mundo real. Ainda que machine learning seja uma área bem ampla e com diversas aplicações, existe uma especialmente interessante: A modelagem preditiva.

Predição é um dos assuntos mais intrigantes e que despertam o interesse e curiosidade humana. Desde o início dos tempos desejamos fazer predições: a condição climática para saber se o dia será propício a caça, os oráculos prevendo o futuro e as datas em que acontecerá a cheia do Rio Nilo, são exemplos de que esta sempre acompanhou os seres humanos. E utilizando técnicas de modelagem preditiva, é possível estimar predições de forma eficiente.