---
author: einar
categories:
- Science
comments: true
date: "2007-10-04T21:17:56Z"
header:
  image_fullwidth: banner_other.jpg
slug: easy-rma-rmaexpress
tags:
- affymetrix
- bioinformatics
- microarray
- Science
title: 'Easy RMA: RMAExpress'
omit_header_text: true
disable_share: true
wordpress_id: 296
---

Today I was looking for an easy way to do some calculations of raw expression data on Affymetrix arrays, but I didn't want to use [R](http://www.r-project.org): I have already mentioned how I don't like its design and implementation. While looking for some documentation, I stumbled upon this nifty little program called [RMAExpress](http://rmaexpress.bmbolstad.com/).

<!--more-->Let me first say what RMA is about: it stands for "Robust Multi-array Average" and is a model-based quantification method for Affymetrix arrays, [originally developed by Irizarry _et al._ ](http://www.ncbi.nlm.nih.gov/sites/entrez?Db=pubmed&Cmd=ShowDetailView&TermToSearch=12925520&ordinalpos=3&itool=EntrezSystem2.PEntrez.Pubmed.Pubmed_ResultsPanel.Pubmed_RVDocSum)It has a number of advantages over the Microarray Analysis Suite 5 (MAS5) algorithm used by Affymetrix software, especially with weakly expressed transcripts. It is commonly made up of three steps: background correction, quantile normalization and median polish.

RMAExpress is a C++, GUI-based program (using [wxWidgets](http://www.wxwidgets.org/)) that performs this process. The main advantage over the various R implementations is speed, as R doesn't really excel in this regards. You can adjust the various RMA parameters, and you can also view the model representations, to see if some areas on the array perform differently (e.g., when there are irregularities in the signal intensities).

What I liked best is that you can use custom chip definition files (CDFs). [Dai _et al._](http://www.ncbi.nlm.nih.gov/sites/entrez?Db=pubmed&Cmd=ShowDetailView&TermToSearch=16284200&ordinalpos=8&itool=EntrezSystem2.PEntrez.Pubmed.Pubmed_ResultsPanel.Pubmed_RVDocSum) have already shown that old 3' GeneChips have outdated annotations, and have proposed new CDFs to compensate. We have already tested their improvement and it gives a nice increase in the number of annotated genes. RMAExpress processes these CDFs just fine.

Finally, you can export data either in log2 format (to use in procedures like [SAM](http://www-stat.stanford.edu/~tibs/SAM/)) or in absolute form (which I need for my work). The program is extremely light and processes a good number of arrays fairly quickly. Windows users have a pre-built binary, while Linux ones need to build sources. The instructions on the page are overly complicated: here's how I managed to build it on Kubuntu:

[code lang="c"]

sudo aptitude install libwxtgk2.8-dev
mkdir tmp
cd tmp
tar xvzf  /path/to/RMAExpress_1.0beta3_src.tar.gz
make all

[/code]

After that, just run RMAExpress from its directory.

After all, I'm quite pleased with the program and I will keep using it in the future.
