Take the 2-minute tour ×
Cross Validated is a question and answer site for people interested in statistics, machine learning, data analysis, data mining, and data visualization. It's 100% free, no registration required.

This has come up in a few questions now, and I've been wondering about something. Has the field as a whole moved toward "reproducibility" focusing on the availability of the original data, and the code in question?

I was always taught that the core of reproducibility was not necessarily, as I've referred to it, the ability to click Run and get the same results. The data-and-code approach seems to assume that the data are correct - that there isn't a flaw in the collection of the data itself (often demonstrably false in the case of scientific fraud). It also focuses on a single sample of the target population, rather than the replicability of the finding over multiple independent samples.

Why is the emphasis then on being able to re-run analysis, rather than duplicate the study from the ground up?

The article mentioned in the comments below is available here.

share|improve this question
    
(+1) Excellent question! –  Jeromy Anglim Aug 31 '11 at 4:12
    
Good question ! I put a reference to the paper of donoho in my answer, but what are your written references about reproducible research ? –  robin girard Aug 31 '11 at 6:22
    
Reiter and Kinney have a paper in this month's issue of Epidemiology called 'Sharing Confidential Data for Research Purposes: A Primer' that helps get at how to make code and data available in circumstances where you can't just toss up a .csv file, and need to ensure confidentiality remains intact. –  Fomite Aug 31 '11 at 22:47
    
@EpiGrad, since "this month" has passed, having a link to the article would be helpful. Thanks for asking a great question that contributes to CV and science / data analysis! –  gung Jan 3 '12 at 19:35
    
@gung Which article is that? –  Fomite Jan 3 '12 at 19:37
show 1 more comment

3 Answers

up vote 36 down vote accepted

"Reproducible research" as reproducible analysis

Reproducible research is a term used in some research domains to refer specifically to conducting analyses such that

  • code transforms raw data and meta-data into processed data,
  • code runs analyses on the data, and
  • code incorporates analyses into a report.

When such data and code are shared, this allows other researchers to:

  • perform analyses not reported by the original researchers
  • check the correctness of the analyses performed by the original researchers

This usage can be seen in discussions of technologies like Sweave. E.g., Friedrich Leisch writes in the context of Sweave that "the report can be automatically updated if data or analysis change, which allows for truly reproducible research." It can also be seen in the CRAN Task View on Reproducible Research which states that "the goal of reproducible research is to tie specific instructions to data analysis and experimental data so that scholarship can be recreated, better understood and verified."

Broader usage of the term "reproducibility"

Reproducibility is a fundamental aim of science. It's not new. Research reports include method and results sections that should outline how the data was generated, processed, and analysed. A general rule is that the details provided should be sufficient to enable an appropriately competent researcher to take the information provided and replicate the study.

Reproducibility is also closely related to the concepts of replicability and generalisation.

Thus, the term "reproducible research", taken literally, as applied to technologies like Sweave, is a misnomer, given that it suggests a relevance broader than it covers. Also, when presenting technologies like Sweave to researchers who have not used such technologies, such researchers are often surprised when I call the process "reproducible research".

A better term than "reproducible research"

Given that "reproducible research" as used within Sweave-like contexts only pertains to one aspect of reproducible research, perhaps an alternative term should be adopted. Possible alternatives include:

All of the above terms are a more accurate reflection of what Sweave-like analyses entail. Reproducible analysis is short and sweet. Adding "data" or "statistical" further clarifies things, but also makes the term both longer and narrower. Furthermore, "statistical" has a narrow and a broad meaning, and certainly within the narrow meaning, much of data processing is not statistical. Thus, the breadth implied by the term "reproducible analysis" has its advantages.

It's not just about reproducibility

The other additional issue with the term "reproducible research" is the aim of Sweave-like technologies is not just "reproducibility". There are several interrelated aims:

  • Reproducibility
    • Can the analyses easily be re-run to transform raw data into final report with the same results?
  • Correctness
    • Is the data analysis consistent with the intentions of the researcher?
    • Are the intentions of the researcher correct?
  • Openness
    • Transparency, accountability
      • Can others check and verify the accuracy of analyses performed?
    • Extensibility, modfifiability
      • Can others modify, extend, reuse, and mash, the data, analyses, or both to create new research works?

There is an argument that reproducible analysis should promote correct analyses, because there is a written record of analyses that can be checked. Furthermore if data and code is shared, it creates accountability which motivates researchers to check their analyses, and enables other researchers to note corrections.

Reproducible analysis also fits in closely with concepts around open research. Of course, a researcher can use Sweave-like technologies just for themselves. Open research principles encourage sharing the data and analysis code to enable greater reuse and accountability.

This is not really a critique of the use of the word "reproducible". Rather, it just highlights that using Sweave-like technologies is necessary but not sufficient to achieving open scientific research aims.

share|improve this answer
2  
(+1) Great answer, very good points. I agree that we should call what Sweave and friends do reproducible analysis. –  NRH Aug 31 '11 at 7:05
1  
(+1) nice overview. but I would note that the term 'raw data' is ambiguous and can be misleading - data is generally processed prior to the stage at which it is considered 'raw', if only to get it into the machine. –  David Aug 31 '11 at 13:33
    
@Jeromy Anglim This a great answer, and gets at the core to what bugs me about the semantics of "reproducible research" - its used to describe a process that only takes place after the data generation process is complete. I like the idea of "Reproducible Analysis" as the term. –  Fomite Aug 31 '11 at 22:44
add comment

Having access to the data and code for the analysis in an easy-to-execute form is a sine qua non of reproducible research. Once you verify that the analysis works, you can substitute your own code/data where you are skeptical of the original author's. I'd say that the majority of statistics-containing papers I read have at least one part of the methodology that is left vague. My attempts to reproduce these analyses are often unsuccessful (and always time-consuming), but it is very difficult to say whether this is because of fraud, human error, or (much more likely) my resolving these ambiguities differently than the author. So, having data+code for a paper does not guarantee that its conclusions are true, but it makes it much easier to critique or extend them.

Also, "reproducible research" a matter of degree. So the reproducible research movement can be seen as encouraging research that is "more reproducible" than the norm, rather than demanding that research meet some minimum threshold. I'd guess that "release the data and code" is in vogue now because it is a relatively easy and non-threatening step.

share|improve this answer
add comment

Being able to re-run everything is a starting point for the reproducible research. It permits to show that you are actually using the same procedure. After that -and only after that- you can pursue the research of your peer. In other words, the strict reproducibility is not to be perceived as a time at which the research is moving forward, but as a landmark, a consensus, something on which people people agree. Isn't thi fundamental to get further ?

Also, according to the discussion of Donoho (read section 2 "the scandal") the aim of reproducible research is also to test robustness of the given code. First by playing with the code, making sligth modification that was not done in the paper (because we don't want papers with 30 Figures ...). I think the concept of reproducible research in the litterature contains the idea of having strong robust landmark. It almost contain the idea of going further.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.