Excel, csv e C++ no R. Livro do Alvin Roth, Nova biografia de Steve Jobs. PCO e liberdade de expressão.


Alguns links interessantes:

R

O pessoal do RStudio não para de trabalhar:

Novo pacote (readr) para ler arquivos de texto (csv e similares) no R;

Novo pacote (readxl) para ler arquivos do Excel no R;

Novo pacote (dygraphs) para fazer gráficos interativos de séries temporais no R usando JavaScript; e

O novo RStudio está ficando cada vez mais poderoso: agora tem uma série de recursos novos para C++ como code completion, diagnóstico de sintaxe e source interativo.

Livros

– O Nobel Alvin Roth irá lançar um novo livro para o público geral: Who Gets What — and Why: The New Economics of Matchmaking and Market Design. O livro está em pré-venda, previsto para sair em junho.

– Nova biografia de Steve Jobs está tendo uma boa repercussão no público e na crítica: Becoming Steve Jobs: The Evolution of a Reckless Upstart into a Visionary Leader.

Para finalizar

– Ainda estou na dúvida se é sério, mas o PCO tem um texto  – aparentemente de verdade – defendendo a liberdade de expressão:

Levy Fidelix é um político de direita e inimigo da luta dos homossexuais, e seu discurso foi um ataque direito aos direitos democráticos, mas a condenação dele não é uma vitória da luta pelas liberdades democráticas (…) A multa de um milhão de reais como penalidade para um candidato expressar a sua opinião política em um debate de campanha eleitoral é uma gravíssimo precedente contra a já limitada possibilidade de livre expressão. A crença de que a justiça está do lado do progresso social e da democracia e, por este motivo, podemos dar a ela poderes discricionários, é não só equivocada, como é uma completa cegueira política (…) Nessas condições, é uma política suicida, já não digamos deixar de denunciar estes abusos, mas principalmente aplaudi-los e confundir a consciência das massas, chamando-as apoiar medidas antidemocráticas apenas porque atingem este ou aquele elemento reacionário. (…) A liberdade de expressão, completa e irrestrita, é uma condição sine qua non para a existência das outras liberdades democráticas, ela é uma liberdade que engloba toda a sociedade e que precede todas as liberdades individuais. (…) Existe uma crescente campanha para solidificar o “crime de opinião” o crime onde você pensa algo que alguns não gostaram e naturalmente você é culpado, onde a sua liberdade está reboque da opinião pública, e se sua opinião tem de ter “selo de aprovação” da opinião pública formada pelos monopólios de comunicação e pela burguesia, a opinião própria já está proibida.

 

useR! 2014 – Palestra do John Chambers e entrevista com Hadley Wickham


Eduardo Arino de la Rubia acabou de me informar que, hoje, entrou no ar o site datascience.la, e já com dois vídeos interessantes decorrentes do useR! 2014: uma palestra do John Chambers e uma entrevista com Hadley Wickham.

Após o primeiro dia de tutoriais, o segundo dia da conferência se iniciou com uma apresentação de John Chambers (slides aqui e vídeo abaixo). Para quem não conhece, John Chambers é o criador da linguagem S (pela qual ganhou o prêmio ACM Software System) que se tornou o “pai” do R e atualmente é um dos membros do core team do R. O foco da palestra foi o de ressaltar o papel do R não como uma solução geral que tenta resolver todos os problemas, mas principalmente como uma interface geral que converse com outros instrumentos e ferramentas quando necessário (como, por exemplo, quando a base de dados é muito grande para caber na memória). Para ilustrar iniciativas com esta filosofia, ele citou três frentes em especial:

  • Interface com C++ e C++11, como já havíamos mencionado no post anterior. Os pacotes que têm recebido destaque nesta área são o Rcpp e Rcpp11;
  • LLVM, com o pacote RLLVM do Duncan Temple Lang.
  • Machine Learning em grandes bases de dados e o exemplo foi o H2O e seu pacote homônimo, mas em caixa baixa, para o R.

Confira a apresentação na íntegra abaixo:

 

Além disso, o Eduardo fez várias entrevistas interessantes no decorrer do encontro e agora começou postar os vídeos. O primeiro deles é com o Hadley Wickham e as perguntas estão excelentes. Vale conferir!

useR! 2014 – Tutoriais


Estava devendo alguns comentários sobre o excelente useR! 2014, mas, devido à correria logo após o retorno, ainda não tinha conseguido sentar para escrever. Aqui seguem alguns comentários sobre os tutoriais, que mereceram um post separado. Um outro post sobre o encontro virá futuramente.

O primeiro dia foi composto de tutoriais de 3 horas, um pela manhã e outro à tarde. Pela manhã, assisti ao tutorial do Max Kuhn, sobre modelos de previsão no R, baseado no seu excelente livro Applied Predictive Modeling e no seu pacote para o R, caret (Classification and Regression Training). Max trabalha na Pfizer, então tem bastante experiência com modelos preditivos voltados para o mercado – em outras palavras, modelos que têm de funcionar. Isso é excelente, pois há um foco grande em como lidar com as técnicas na prática e como gerenciar seu fluxo de trabalho na análise de dados, uma lacuna presente em muitos livros de estatística e machine learning. Os slides e códigos do tutorial podem ser encontrados aqui.

IMG_0168

 

Entretanto, o custo de assistir ao tutorial do Max foi o de perder os outros, igualmente interessantes, que ocorreram simultaneamente. Em particular, alguns que não pude ver mas depois consultei o material foram: (i) Matt Dowle sobre o pacote data.table (para manipulação de dados). Se você ainda não conhece o data.table, está perdendo precioso tempo de vida. Eu literalmente acabei de juntar mais de 2 milhões de observações de imóveis com a função rbindlist instantaneamente, enquanto que com a função base do R demorava minutos. E (ii) Romain Francois sobre a integração do R com C++11 e seu pacote Rcpp11. Um interface simples para interagir com C++ e C++11 parece estar sendo a resposta para desenvolvimento de pacotes de alta performance no R. Meu interesse nesta assunto tem crescido particularmente pelo fato de simulações Bayesianas poderem ser computacionalmente muito intensas, então você acaba eventualmente tendo que se preocupar com performance. Não é muito legal esperar dias para um modelo rodar e, só depois, você descobrir um bug para ter que rodar tudo de novo.

Pela tarde assisti ao tutorial do Hadley Wickham sobre manipulação de dados com o dplyr. O dplyr é um pacote que tem o lado do bom dos dois mundos: uma sintaxe simples e amigável para dummies – ainda mais com o uso do pipe operator %>% do magrittr juntamente com excelente performance (Romain e C++!).  Como eu já havia adotado o dplyr desde seu lançamento, assisti ao tutorial mais para prestigiar o Hadley do que para aprender.   Valeu a pena, a apresentação foi muito bacana!

IMG_0179

E, para variar, infelizmente não pude ir a dois tutorias que me chamaram a atenção em particular: (i) o do Ramnath, sobre documentos interativos com R, discutindo o rCharts, slidify, bem como soluções server side que têm surgido como Shiny e OpenCPU. E (ii) a apresentação do Dirk Eddelbuettel sobre o Rcpp.

Além dos tutoriais que mencionei, foram abordados temas como visualição dinâmica, modelos  de rede bayesiana, análise de dados espaciais entre diversos outros. Então,  se você ainda não tinha tido contato com estes assuntos/pacotes e quer se aprofundar,  eis aí uma boa oportunidade. Há bastante material para consulta e praticamente todos estão disponíveis no site!