[BioC] Normalization of Agilent miRNA arrays using spike-ins
christianeisen at alice-dsl.de
Tue Oct 21 08:44:53 CEST 2008
like the topic already says, I am trying to use spike-ins for
I ran two Agilent miRNA microarrays and when I plot the raw data I see
between the two arrays, meaning the values of Array 2 are around
1.3-fold higher than
the ones from Array 1. Therfore I decided to do normalization.
I already read a lot about loading the data into BioC and some
Since there is still a large debate about the right preprocessing
strategy I decided
to figure out which of them is working best for me.
I used limma so far for loading the data and for some preprocessing, but
loaded the data by read.table() and then used vsn() and other.
Unfortunately after normalization using the implemented strategies
all differentially expressed genes are gone, meaning that values which
different by 10-fold and more in the raw dataset, are now almost equal.
Therfore I decided to do spike.in normalization.
The array has several "control" spots as well as negative and positive
I read a lot about normalization with spike-ins but I just can't figure
out how to do it.
I know that vsn2() offers this by fitting a transformation only to a
small number of
probes and than normalizing the bulk data "towards" this transformed data.
However, if I extract the supposed spike-ins from my data and store it
in a new
matrix, doing the transformation just on these and storing the
transformed values in
a vsn object, I can't do the transformation of the remaining genes on
this vsn object.
> fit=vsn2(mrawObj_TGS.spikeins, lts.quantile = 0.7)
vsn: 912 x 32 matrix (1 stratum). 0% done.
Please use 'meanSdPlot' to verify the fit.
> fit2=vsn2(mrawObj_TGS.genesubset, fit, lts.quantile = 0.7)
Fehler in vsnMatrix(y, reference, strata, ...) :
'nrow(reference)' must be equal to 'nrow(x)'.
I understand that the matrix containing the transformed values
(reference) mus have the same
number of rows as the object I wan't to be transformed.
But there is just no way for me to get to that point since I only have
around 200 spikes but more than 12.000 genes.
I also fitted a vsn transformation on the data from Array 1 and used
for vsn transformation of Array 2 to get rid of the between array
But I don't now if this is the right thing to do!
So my question is if anybody already has experience in normalization
using spike-ins and
how your advice would be what I shall do now.
Thanks a lot in advance!
More information about the Bioconductor