
controlStatus(types, genes, spottypecol="SpotType", regexpcol, verbose=TRUE)
readSpotTypes
.RGList
, MAList
, EListRaw
, EList
or MArrayLM
from which the gene annotation can be extracted.types
containing spot type names.types
and genes
.TRUE
then progess on pattern matching is reported to the standard output channel.genes
contains gene IDs and should have as many rows as there are spots on the microarrays.
Such a data frame is often read using readGAL
.
The data frame types
has as many rows as you want to distinguish types of spots in the gene list.
This data frame should contain a column or columns, the regexpcol
columns, which have the same names as columns in genes
and which contain patterns to match in the gene list.
Another column, the spottypecol
, contains the names of the spot types.
Any other columns are assumed to contain plotting parameters, such as colors or symbols, to be associated with the spot types.The patterns in the regexpcol
columns are simplified regular expressions.
For example, AA*
means any string starting with AA
, *AA
means any code ending with AA
, AA
means exactly these two letters, *AA*
means any string containing AA
, AA.
means AA
followed by exactly one other character and AA\.
means exactly AA
followed by a period and no other characters.
Any other regular expressions are allowed but the codes ^
for beginning of string and $
for end of string should not be included.
Note that the patterns are matched sequentially from first to last, so more general patterns should be included first.
For example, it is often a good idea to include a default spot-type as the first line in types
with pattern *
for all regexpcol
columns and default plotting parameters.
genes <- data.frame(
ID=c("Control","Control","Control","Control","AA1","AA2","AA3","AA4"),
Name=c("Ratio 1","Ratio 2","House keeping 1","House keeping 2",
"Gene 1","Gene 2","Gene 3","Gene 4"))
types <- data.frame(
SpotType=c("Gene","Ratio","Housekeeping"),
ID=c("*","Control","Control"),
Name=c("*","Ratio*","House keeping*"),
col=c("black","red","blue"))
status <- controlStatus(types,genes)
Run the code above in your browser using DataLab