[BioC] saturated spots
Henrik Bengtsson
hb at stat.berkeley.edu
Wed Jan 17 10:11:31 CET 2007
Hi,
your signals show saturation around 2^16-1 (=65535) on the intensity
scale, which is the maximum pixel intensity of the scanner (or at
least on most scanners I've seen). From that I would conclude that
the saturation is due to the scanner, and most likely (hopefully) not
due to other types of saturation, e.g. quenching. The reason why the
saturated probe signals are not exactly 65535 is because those are
calculated as an average across multiple pixels, where some are
saturated (censored) and some are not.
As suggested by Naomi and Jose, the best approach to correct for this
is to change the scanner settings. Typically you want to adjust the
PMT voltage, which controls the sensitivity of the scanner, cf. the
exposure time when you take a photo with a camera. Some scanner also
allow you to adjust the laser power, which will affect how much light
each probe emits, cf. the strength of the flash of your camera.
Changing the PMT should be enough.
If you worry about loosing weak spots, you may, as suggested, scan
your arrays at multiple different PMT settings. The
calibrateMultiscan() method of the aroma.light package will combine
signals from multiple scans for you. Each channel is combined
separately. Saturated probes are automatically taken care of. Any
offset in your scanner is corrected for as well. Note: Do not adjust
the laser power, just the PMTs.
Example: Say you've loaded your red-green signals from one array and 4
scans into one RGList 'rg' using limma. To calibrate (combine) your
scans, do:
rgC <- new("RGList", list(
R=calibrateMultiscan(rg$R),
G=calibrateMultiscan(rg$G)
))
With four scans, the above will decrease the standard deviation of the
noise from the scanner by half. If there is a scanner offset (which
if often the case), you will also see that your MA plots are less
curvy afterwards (because your signals contain less "background").
Although it is enough with two scans, I recommend that you scan at at
least three PMT levels so that if a probe is saturated in one of the
scans, a good estimate can still be obtained from the other two scans.
The method also takes the argument 'satSignal' allowing you to set a
threshold where a signal should be considered saturated. There is
also the option to down weight some data points using the 'weights'
argument. You normally don't have to specify any of these, but they
are there for you to play around with. See ?calibrateMultiscan.matrix
for more options.
The paper behind all this:
H. Bengtsson, J. Vallon-Christersson and G. Jönsson, Calibration and
assessment of channel-specific biases in microarray data with extended
dynamical range, BMC Bioinformatics, 5:177, 2004.
FYI: Most of the normalization methods in aroma.light accepts
arguments 'satSignal' and 'weights', e.g. normalizeCurveFit(),
normalizeAffine(), and normalizeQuantile(). This makes it possible to
normalize data where the otherwise robust methods fail.
Hope this helps
Henrik
On 1/17/07, Naomi Altman <naomi at stat.psu.edu> wrote:
> I do not have experience with ChIP experiments. However, in
> expression experiments, we try to set the scanner range to eliminate
> saturation and let the normalization take care of equalizing the channels.
>
> --Naomi
>
> At 10:08 AM 1/16/2007, J.delasHeras at ed.ac.uk wrote:
> >Quoting Hans-Ulrich Klein <h.klein at uni-muenster.de>:
> >
> > > Dear all,
> > >
> > > I currently analyse some selfmade oligo chips. The green channel
> > > contains the results of a ChIP-experiment. The red one contains genomic
> > > DNA. I read in the data and did some quality plots using limma.
> > > Unfortunatly, most arrays show strong saturation effects.
> > >
> > > Some plots for interested readers:
> > > MA-plot: http://img402.imageshack.us/img402/6323/maplotqa1.png
> > > density: http://img146.imageshack.us/img146/482/densitynotlogjo9.png
> > > density log2: http://img183.imageshack.us/img183/9416/densitylogmt8.png
> > >
> > > It is certainly not a good idea to ignore the saturation. The saturated
> > > spots are not flagged by the image analysis software. (Only non-flagged
> > > spots are plotted in the images above.) My solution is to set a
> > > threshold value for each array manually just before the saturation peak
> > > (using the density plots) and then flag all spots with intensities
> > > larger than the threshold. The flagged spots are not used for
> > > normalization and further analysis.
> > >
> > > Are there any R-packages dealing with saturation problems? Maybe for
> > > detecting the threshold automatically or for correcting saturated spots
> > > with non-linear transformations. I have found none.
> > >
> > > How do you handle such saturation effects in your data?
> > >
> > > Thank you very much for any suggestions,
> > > Hans-Ulrich
> >
> >Hi Hans,
> >
> >there are clearly some saturated spots, but I am not sure you need to
> >worry too much. They're still a small proportion of the total. I
> >suppose it is reasonable to flagged the saturated spots (which you can
> >find by looking at the actual raw intensity) and not include those in
> >the normalisation. However I would not necessarily remove them from
> >the subsequent analysis. If a spot is saturated for one channel, but
> >is weak enough in the other, it may be still interesting despite the
> >fact that the ratio will be off: it'll still be "big enough". The
> >ratios you obtain from your arrays will not be anywhere as accurate as
> >what you'll get when you validate results by PCR. They give you an
> >idea of what's going on, but if you want real quantitation you have to
> >validate those spots by real time (or even semiquantitative) PCR, so I
> >wouldn't worry too much about some degree of saturation. saturated
> >spots are still informative (bright!), depending on what happens on
> >the other channel.
> >
> >You can use the flags to add a note of "attention" when you deal with
> >those spots, if they appear in your final list of interesting genes,
> >and decide individually which ones you want to trust.
> >
> >Perhaps you should look also into the actual sequences that give you
> >the brightest signals (saturated). Perhaps you find out that the
> >reason they're so bright is they're present in multiple copies in the
> >genome (even if you filter them out during design, some may creep
> >in)... in which case you could just ignore them from the beginning.
> >
> >As for correcting the range to account for saturated spots... I think
> >the aroma package allows you to deal with multiple scans of the same
> >slide, using different PMT settings, to re-arrange the dynamic range.
> >This seems especially useful when you have some very bright spots you
> >don't want to lose, but which will saturate if you scane to get decent
> >intensities on the much weaker bulk. I haven't tried it myself. I
> >tried another approach (MASLINER) and it did seem to work, but in teh
> >end I decided it wasn't worth the effort in my particular case.
> >
> >Jose
> >
> >--
> >Dr. Jose I. de las Heras Email: J.delasHeras at ed.ac.uk
> >The Wellcome Trust Centre for Cell Biology Phone: +44 (0)131 6513374
> >Institute for Cell & Molecular Biology Fax: +44 (0)131 6507360
> >Swann Building, Mayfield Road
> >University of Edinburgh
> >Edinburgh EH9 3JR
> >UK
> >
> >_______________________________________________
> >Bioconductor mailing list
> >Bioconductor at stat.math.ethz.ch
> >https://stat.ethz.ch/mailman/listinfo/bioconductor
> >Search the archives:
> >http://news.gmane.org/gmane.science.biology.informatics.conductor
>
> Naomi S. Altman 814-865-3791 (voice)
> Associate Professor
> Dept. of Statistics 814-863-7114 (fax)
> Penn State University 814-865-1348 (Statistics)
> University Park, PA 16802-2111
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor
>
More information about the Bioconductor
mailing list