Open Access Highly Accessed Software

Performing statistical analyses on quantitative data in Taverna workflows: An example using R and maxdBrowse to identify differentially-expressed genes from microarray data

Peter Li1*, Juan I Castrillo2, Giles Velarde1, Ingo Wassink3, Stian Soiland-Reyes4, Stuart Owen4, David Withers4, Tom Oinn5, Matthew R Pocock6, Carole A Goble4, Stephen G Oliver2 and Douglas B Kell1

Author Affiliations

1 Manchester Centre for Integrative Systems Biology and School of Chemistry, Manchester Interdisciplinary Biocentre, University of Manchester, 131 Princess St, Manchester, M1 7DN, UK

2 Department of Biochemistry, Sanger Building, University of Cambridge, 80 Tennis Court Road, Cambridge, CB2 1GA, UK

3 Human Media Interaction group, Electrical Engineering, Mathematics and Computer Science, University of Twente, Drienerlolaan 5, 7500 AE, Enschede, The Netherlands

4 School of Computer Science, Kilburn Building, University of Manchester, Oxford Road, Manchester, M13 9PL, UK

5 EMBL European Bioinformatics Institute, Hinxton, Cambridge, CB10 1SD, UK

6 School of Computing Science, University of Newcastle, NE1 7RU, UK

For all author emails, please log on.

BMC Bioinformatics 2008, 9:334  doi:10.1186/1471-2105-9-334

Published: 7 August 2008



There has been a dramatic increase in the amount of quantitative data derived from the measurement of changes at different levels of biological complexity during the post-genomic era. However, there are a number of issues associated with the use of computational tools employed for the analysis of such data. For example, computational tools such as R and MATLAB require prior knowledge of their programming languages in order to implement statistical analyses on data. Combining two or more tools in an analysis may also be problematic since data may have to be manually copied and pasted between separate user interfaces for each tool. Furthermore, this transfer of data may require a reconciliation step in order for there to be interoperability between computational tools.


Developments in the Taverna workflow system have enabled pipelines to be constructed and enacted for generic and ad hoc analyses of quantitative data. Here, we present an example of such a workflow involving the statistical identification of differentially-expressed genes from microarray data followed by the annotation of their relationships to cellular processes. This workflow makes use of customised maxdBrowse web services, a system that allows Taverna to query and retrieve gene expression data from the maxdLoad2 microarray database. These data are then analysed by R to identify differentially-expressed genes using the Taverna RShell processor which has been developed for invoking this tool when it has been deployed as a service using the RServe library. In addition, the workflow uses Beanshell scripts to reconcile mismatches of data between services as well as to implement a form of user interaction for selecting subsets of microarray data for analysis as part of the workflow execution. A new plugin system in the Taverna software architecture is demonstrated by the use of renderers for displaying PDF files and CSV formatted data within the Taverna workbench.


Taverna can be used by data analysis experts as a generic tool for composing ad hoc analyses of quantitative data by combining the use of scripts written in the R programming language with tools exposed as services in workflows. When these workflows are shared with colleagues and the wider scientific community, they provide an approach for other scientists wanting to use tools such as R without having to learn the corresponding programming language to analyse their own data.