Highlights of the Milwaukee Workshop on R and Bioinformatics

May 23, 2013
By

(This article was first published on Revolutions, and kindly contributed to R-bloggers)

by Joseph Rickert

On May 10th and 11th, in honor of this being the International Year of Statistics, the Milwaukee Chapter of the American Statistical Association (MILWASA) held a workshop on cutting edge uses of R in Bioinformatics. One objective of the workshop was to show the "nuts and bolts" details of how R with C++ integration and the specialized capabilities of the Bioconductor Project provides an flexible, feature-rich platform for advanced Bioinfomatics applications. Featured speakers were: 

  • Denise Scholtens who gave talks on analyzing microarray data using R and Bioconductor, building graphs with R and Bioconductor, gene set enrichment analysis, and Expression Set objects.
  • Kwang-Youn Kim who spoke on the analysis of RNA sequencing data using R and Bioconductor and
  • Dirk Eddelbuettel gave a thorough, four-part introduction to Rcpp, his package for integrating R with C++.

A tremendous amount of material from this workshop (pdfs, slides, data and R code) is available online. And, if you are interested in R and C++ integration have a look at Dirk’s new book.

The following graph from Denise’s presentation on gene set enrichment analysis shows a portion of an induced gene ontology graph using using the classic Fisher elimination algorithm and gives an idea of the some of the sophisticated analyses you can do with her R code.

Gene_ontology_graph

Note if you want to run the code you will have to get some of the packages from Bioconductor. Here is some code from Kwang-Youn on how to get started.

# Install all the necessary packages if not on your system
source("http://bioconductor.org/biocLite.R")
## Bioconductor version 2.11 (BiocInstaller 1.8.3), ?biocLite for help
biocLite(c("TxDb.Dmelanogaster.UCSC.dm3.ensGene", "ShortRead", "edgeR", "cummeRbund"))
## BioC mirror: http://bioconductor.org
## Using Bioconductor version 2.11 (BiocInstaller 1.8.3), R version 2.15.
## Installing package(s) 'TxDb.Dmelanogaster.UCSC.dm3.ensGene' 'ShortRead'
## 'edgeR' 'cummeRbund'
##
## The downloaded binary packages are in
## /var/folders/nk/9bnzzk_152vg4wslcbxc5g_c0000gn/T//RtmpzkrvEW/downloaded_packages

Created by Pretty R at inside-R.org

And here is some sample code from Dirk's presentation on calling R plot functions from C++. 
#include <RInside.h> // embedded R via RInside
int main(int argc, char *argv[]) {
RInside R(argc, argv); // create an embedded R instance
// evaluate an R expression with curve()
std::string cmd = "tmpf <- tempfile(’curve’); "
"png(tmpf); curve(x^2, -10, 10, 200); "
"dev.off(); tmpf";
// by running parseEval, we get filename back
std::string tmpfile = R.parseEval(cmd);
std::cout << "Could use plot in " << tmpfile << std::endl;
unlink(tmpfile.c_str()); // cleaning up
// alternatively, by forcing a display we can plot to screen
cmd = "x11(); curve(x^2, -10, 10, 200); Sys.sleep(30);";
R.parseEvalQ(cmd);
exit(0);
}

Revolution Analytics is proud to have been a sponsor for this workshop. Congratulations to Rodney Sparapani of the Medical College of Wisconsin for making it happen!

To leave a comment for the author, please follow the link and comment on his blog: Revolutions.

R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...



If you got this far, why not subscribe for updates from the site? Choose your flavor: e-mail, twitter, RSS, or facebook...

Comments are closed.