Welcome to the main course website for Introduction to Systems Biology. Use our sakai site to access the syllabus and submit assignments.

- Why R?. An introduction to the R language, why we'll be using it in this course and why it has become the most popular platform for data analysis in both bioinformatics and data science. (slides)
- R 101. A practical introduction to working with data in R, including working with variables, functions and importing data. Everything you need to know how to do in R to avoid ever having to use Excel again! (slides)

- Genome annotation (Part 1). In this lab you will write a set of functions that find and annotation genomic features in raw DNA sequence. Along the way we'll learn some best-practices for organizing our code and data structures. We'll also explore regular expressions, a powerful declarative language for finding pasterns in text.
- Genome annotation (Part 1) - Solutions. Partial solutions for the genome annotation lab.
- Genome annotation (Part 2). In today's lab we'll continue to explore the yeast genome, using existing curated data sets and the plotting package ggplot2.
- Analysis of gene expression data. In this lab we'll perform a de novo analysis of an existing microarray dataset. The tools we'll explore will be useful for any data analysis project focused on a gene expression dataset.
- Clustering and networks (Part 1). In this lab we'll explore several machine learning algorithms commonly used to find patterns in biological data sets, including clustering and building network graphs.
- Clustering and networks (Part 2). Part two of this week's coninues our tour of clustering and network building approaches, including methods for assessing cluster singificance and performing factor and principle component analysis.

Beginner:

tryR. A new code school that walks you through a very basic introduction to R. A great way to start out if this is your first time working at a command line or with a scripting language.

Quick-R. A great collection of quick-and-dirty How-to’s for common data analysis tasks in R. I’d recommend starting with a search here if you’re stuck trying to figure out how to do something that should be simple.

R-Bloggers. This site is a collection of R-related blogs from around the web. It’s a great site to browse if you want to be inspired by cool things other people are doing in R.

R Documentation. Documentation for R and all the current CRAN packages are available on this website with an advanced search interface and community submitted comments.

RStudio help. This term you’ll be doing all of your work in R using the fantastic RStudio environment. See the extensive help documentation to learn about all of the features of this platform.

Advanced:

Advanced R Programming. A new WIP book on advanced R programming by Hadley Wickham. The current draft is incomplete in parts but also freely available!

R Inferno. A quirky but useful exploration of common R pitfalls and many of the less-than-intuitive aspects of R language semantics (told in the model of Dante’s work by the same name).

Evaluating the Design of the R Language. For programming language geeks this 2012 paper takes a pass at describing a formal semantics for the core langauge and provides a deep analysis of the run-time behavior of the reference R interpreter.

Parellel Computation on the GPU. This is a nice guide to a couple of R pacakges that let you use CUDA GPUs to perform computationally intensive operations. All of the PCs in the IQ Center 2D lab have dual high-end nVidia GPUs.