source: plugins/base2/net.sf.basedb.illumina/trunk/README_PluginDetails @ 1168

Last change on this file since 1168 was 1168, checked in by Jari Häkkinen, 14 years ago

Fixes #204. Also improved docs.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
  • Property svn:mime-type set to text/x-trac-wiki; charset=utf-8
File size: 3.5 KB

$Id: README_PluginDetails 1168 2009-09-29 09:53:15Z jari $


There are many plug-ins in the Illumina plug-in package for BASE. This file gives detailed information on some of the contributed plug-ins.

Illumina detection P-value calculation

This plug-in implements BeadStudio like detection P-value calculations for Illumina expression data (see on detection P-values.

The plug-in will always base the detection P-value calculation on raw data values, i.e., the mean raw intensity for the different signals. By default the calculations are based on negative controls available in the root bioassay set for the current analysis branch. The user may change this to only use negative controls in the current bioassay set.

The detection P-value plug-in does not filter the assays, it provides the detection P-values usable in a filter step after running this plug-in.


The plug-in requires input of array type since detection P-value are calculated differently depending on array type.

Users may select to use negative controls in the current bioassay set only. The default behaviour is to use all negative controls in the root bioassay set for the current bioassay set.

A cut off parameter is available to exclude outliers within the negative controls. The cutoff defines the acceptable negative control signal range

median-MAD*cutoff < I < median+MAD*cutoff

where MAD is the median absolute deviation.

Implementation details

Each assay is treated separately, i.e., no samples are combined together. All calculations are made on the raw bead-type level data, i.e., on the average expression value for each bead type and raw data is always used irrespective when in analysis the detection P-value is calculated.

Pvalue calculation for whole genome arrays:

For all signals i calculate the detection P-value as Pvalue = 1-R/N where R is the rank of the signal i relative to the negative controls and N is the number of negative controls.

Pvalue calculation for others array types (DASL, miRNA, VeraCode DASL, and Focused Arrays):

For all signals i calculate the detection P-value as Pvalue = 1/2 - 1/2 * erf( [i-AvgControl]/StdControl/sqrt(2) ) where AvgControl is the average intensity of the negative controls, StdControl is the standard deviation of the the negative controls, and erf is the error function ( The error function is used for arguments within the range (-4,4). To save CPU cycles, the function value for arguments outside this range is set to -1 and 1, respectively.

Copyright (C) 2009 Jari Häkkinen
This file is part of Illumina plug-in package for BASE.
Available at
BASE main site:
This is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 3
of the License, or (at your option) any later version.
The software is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with BASE. If not, see <>.

Note: See TracBrowser for help on using the repository browser.