calculateDetection {beadarray} | R Documentation

## Calculate detection scores

### Description

Function to calculate detection scores for summarized data if they are not available.

### Usage

    calculateDetection(BSData, status=fData(BSData)$Status, negativeLabel="negative")

### Arguments

`BSData` | An ExpressionSetIllumina object
`status` | character vector giving probe types
`negativeLabel` | character giving identifer for negative controls

### Details

Detection scores are a measure of whether the probe is showing any specific expression. This function implements Illumina's method for calculating the detection scores for all bead types on a given array. Within an array, Illumina discard negative control bead-types whose summary values are more than three MADs from the median for the negative controls. Illumina then rank the summarized intensity for each other bead-type against the summarized values for the remaining negative control bead-types and calculate a detection p-value 1-R/N, where R is the relative rank of the bead intensity when compared to the $N$ remaining negative controls. Thus, if a particular bead has higher intensity than all the negative controls it will be assigned a value of 0. This calculation is repeated for all arrays.

The function expects the negative controls to be indicated by the `Status` column in the `featureData` slot of the `ExpressionSetIllumina` object. If this is not present the user can supply a status vector with the same length as the number of rows in the ExpressionSetIllumina object.

### Value

Matrix of detection scores with the same dimensions as the exprs matrix of BSData. This matrix can be stored in a ExpressionSetIllumina object using the `Detection` function

### Author(s)

Mark Dunning and Andy Lynch

### Examples

    if(require(beadarrayExampleData)){

    data(exampleSummaryData)
    ##By default, the status column of featureData is used

    exampleSummaryData.log2 <- channel(exampleSummaryData ,"G")

    det <- calculateDetection(exampleSummaryData.log2)

    Detection(exampleSummaryData.log2) <- det

    ##Example of specifying own status vector

    exampleSummaryData.log2 <- addFeatureData(exampleSummaryData.log2)

    pq <- fData(exampleSummaryData.log2)$PROBEQUALITY

    det2 <- calculateDetection(exampleSummaryData.log2, status="pq", negativeLabel="No match")
    }

[Package beadarray version 2.38.0 Index]