26 de Agosto, 2016
Ciência é conhecimento que entendemos tão bem que podemos ensiná-la para um computador. Todo o resto é arte.
Donald Knuth, 1974
O processo de análise de dados por um pesquisador pode ser comparado ao processo de criação de uma música por um músico.
Os métodos já foram ensinados ao computador, cabe ao analista saber como juntar as ferramentas e aplicá-las para responder questões relevantes para a ciência e para as pessoas.
A Ciência é um processo de aprendizado da natureza, onde ideias concorrentes sobre como funciona o mundo são medidas contra observações.
Richard Feynman, 1965
"Árvore de aprendizado" de Platt (1964) a partir de experimentos críticos, denominada inferência forte (strong inference), e que consiste das seguintes etapas:
Esta visão de Platt é naturalmente uma extensão lógica do trabalho de Popper, que revolucionou a filosofia da Ciência no século 20, ao argumentar que uma hipótese não pode ser provada, apenas desprovada.
A essência do método Popperiano é "desafiar" uma hipótese repetidamente. Se a hipótese permanece válida então ela não é validada, mas adquire um certo "grau de confiança", que na prática passa a ser tratada como verdadeira.
Coincidindo com esta filosofia de Popper está o trabalho estatístico de Ronald Fisher, Karl Pearson, Jerzy Neyman e outros, que desenvolveram grande parte da teoria estatística atual associada à "testes de hipótese".
A replicação é um dos pilares fundamentais da ciência.
É necessário que diversos cientistas coletem e analisem dados de forma independente, e cheguem no mesmo resultado.
Se muitas pessoas diferentes chegarem à mesma conclusão de forma independente, então tendemos a pensar que a relação ou resultado provavelmente é verdadeiro (que vai de encontro com a filosofia de Popper).
Hoje em dia, a replicação tem se tornado cada vez mais desafiadora:
Além disso, existem estudos que dificilmente podem ser replicados:
Existem muitas boas razões pelas quais não podemos replicar um estudo.
Se replicar não é possível, então existem duas opções:
A ideia é criar uma espécie de padrão mínimo, ou um meio-termo entre replicar um estudo e não fazer nada.
Uma parte fundamental da pesquisa reproduzível é tornar disponíveis dados e métodos computacionais (em forma de código).
Muitas revistas científicas tem atualizado suas políticas de publicação, para encorajar a reproducibilidade dos artigos publicados.
Preocupações:
Cientistas estão preocupados em fazer pesquisa reproduzível, mas mesmo na PLoS, cerca de 60% das publicações não disponibilizam dados suficientes.
Quatro elementos principais:
Estudos recentes tem mostrado que cientistas passam cerca de 30% de seu tempo escrevendo códigos.
No entanto, mais de 90% deles são primariamente auto-didatas, e portanto carecem de exposição à boas práticas de desenvolvimento de software como:
Publicar dados e códigos não é necessariamente uma tarefa trivial.
Problemas comuns:
Por isso, a proposta de distribuir dados e códigos documentados de uma pesquisa científica, de maneira acessível e auto-contida.
O R possui ferramentas para gerar documentos de análise (dinâmicos), auto-contidos (em formato de pacote ou arquivos simples).
Dessa forma, para reproduzir uma pesquisa é necessário apenas executar um arquivo (ou instalar um pacote no R) para reproduzir uma análise.
Benefícios:
Na apresentação do dia 18/09/2015:
knitr com Markdown
R Markdown
Adicionando índice e número de seção
output: html_document: toc: true toc_float: collapsed: false number_sections: true
Alterando exibição de código
output: html_document: code_folding: hide
Alterando temas com Bootstrap
output: html_document: theme: journal
Os temas podem ser escolhidos entre os disponíveis em http://bootswatch.com/
É possível adicionar referências bibliográficas a documentos em R Markdown nativamente (graças ao Pandoc) usando o mesmo padrão do LaTeX (arquivos BibTeX)
bibliography: referencias.bib
Para criar uma citação use a sintaxe [@id]
onde id
é o identificador da referência.
Para citações in-line use apenas @id
.
Quando o documento for compilado, uma lista com as referências utilizadas será incluida ao final do documento. No entanto, não há um título automático, por isso é comum incluir # Referências
no final.
Exemplos
Separe multiplas citações com `;`, por exemplo [@Buckland2004; @DeValpine2004]. Você pode adicionar comentários arbitrários dentro do colchetes, como por exemplo [veja @Durbin1997, pp. 33-35; e @Kitagawa1987, cap. 1]. Remova os colchetes para criar citações no texto com @Lele2007, ou @Meinhold2016 [p. 5].
Você pode criar sites inteiros com R Markdown, contendo todo o material necessário para uma pesquisa reproduzível.
O site pode conter diversas páginas com documentos em R Markdown, além dos dados e demais arquivos necessários.
Facilidade na hora da distribuição e divulgação da pesquisa.
Apenas dois arquivos necessários
_site.yml
name: "Site" navbar: title: "Meu site" left: - text: "Home" href: index.html
index.Rmd
--- title: "Meu site" --- Esta é a página inicial do meu site.
Para um exemplo simples veja
O GitHub funciona tanto como um repositório para os arquivos, quanto como um servidor gratuito para hospedar o site.