A class for data from cell-based high-throughput assays performed in plate format.

Description

Container for data and experimental meta-data from cell-based high-throughput assays performed in plate format. Typical applications are RNA interference or small molecular compound screens. The class extends the NChannelSet class. Data are from experiments where the same set of reagents (probes) where used. The class can represent data from multi-channel assays.

The data can be thought of as being organised in a two- or three-dimensional array as follows:

  • The first dimension corresponds to reagents (e.g. siRNAs, chemical compounds) that were used in the assays. For example, if the screen used 100 plates of 384 wells (24 columns, 16 rows), then the first dimension has size 38,400, and the cellHTS object keeps track of plate ID, row, and column associated with each element. For historic reasons, and because we are using infrastructure that was developed for microarray experiments, the following terms are used synonymously for the elements of the first dimension: reagents, features, probes, genes.

  • The second dimension corresponds to assays, including replicates and different experimental conditions (cell type, treatment, genetic background). A potentially confusing terminology is that the data structure that annotates the second dimension is called phenoData. This is because we are using infrastructure (the NChannelSet class) that uses this unfortunate term for this purpose. The software provides methodology for replicate summarization and scoring, however more complicated experimental designs are not directly supported. Multi-purpose tools like lmFit in the limma package should be consulted.

  • The (optional) third dimension corresponds to different channels (e.g. different luminescence reporters)

Objects from the Class

Objects can be created by calls of the form new("cellHTS", assayData, phenoData, ...). See the examples below.

Slots

plateList:

a data.frame containing what was read from input measurement data files plus a column status of type character containing the string "OK" if the data import appeared to have gone well, and the respective error or warning message otherwise.

intensityFiles:

a list, where each component contains a copy of the imported input data files. Its length corresponds to the number of rows of plateList.

state:

a logical vector of length 4 representing the processing status of the object. It must have the names "configured", "normalized", "scored" and "annotated".

plateConf:

a data.frame containing what was read from the configuration file for the experiment (except the first two header rows). It contains at least three columns named Plate, Well and Content. Columns Plate and Well are allowed to contain regular expressions.

screenLog:

a data.frame containing what was read from the screen log file for the experiment, in case it exists. Contains at least three columns, and column names Plate, Well, and Flag. Additional columns are Sample (when there are replicates or more than one sample or condition) and Channel (when there are multiple channels).

screenDesc:

a character containing what was read from the description file of the experiment.

rowcol.effects:

a 3D array of size Features (i.e. plate size x number of plates) x Samples x Channels containing estimated row and column plate spatial offsets.

overall.effects:

a 3D array of size Features x Samples x Channels containing estimated plate overall offsets.

assayData:

Object of class AssayData, usually an environment containing matrices of identical size. Each matrix represents a single channel. Columns in each matrix correspond to samples (or replicate), rows to features (probes). Once created, cellHTS manages coordination of samples and channels.

plateData:

A list of data frames, with number of rows of each frame equal to the number of plates used in the assay and number of columns equal to the number of samples. Each data frame in the list should contain factorial annotation information relevant for the individual plates, like experimental batches or varying types of micro-titre plates. Currently, this information will be used for between-batch normalization and quality assessment.

phenoData:

Object of class AnnotatedDataFrame. Please see the documentation of the phenoData slot of NChannelSet for more details.

It contains information about the screens, and it must have the following columns in its data component: replicate and assay, where replicate is expected to be a vector of integers giving the replicate number, while assay is expected to be a vector of characters giving the name of the biological assay. Both of these vectors should have the same length as the number of Samples.

Once created, cellHTS coordinates selection and subsetting of channels in phenoData.

featureData:

Object of class AnnotatedDataFrame, containing information about the reagents: plate, well, column, the well annotation (sample, control, etc.), etc. For a cellHTS object, this slot must contain in its data component at least three mandatory columns named plate, well and controlStatus. Column plate is expected to be a numeric vector giving the plate number (e.g. 1, 2, ...), well should be a vector of characters (alphanumeric characters) giving the well ID within the plate (e.g. A01, B01, H12, etc.). Column controlStatus should be a factor specifying the annotation for each well with possible levels: empty, other, neg, sample, and pos. Other levels besides pos and neg may be employed for controls.

experimentData:

Object of class MIAME containing descriptions of the experiment.

annotation:

A "character" of length 1, which can be used to specify the name of an annotation package that goes with the reagents used for this experiment.

processingInfo:

A list containing information about which normalization and summarization methods have been used.

.__classVersion__:

Object of class Versions, containing automatically created information about the class definition, Biobase package version, and other information about the user system at the time the instance was created. See classVersion and updateObject for examples of use.

Extends

Class NChannelSet, directly.

Methods

Methods with class-specific functionality:

name(object)

signature(object="cellHTS"). Obtains the name of the assay stored in the object. This corresponds to the contents of column assay of the phenoData slot of the cellHTS object.

name(object) <- value

signature(object = "cellHTS", value = "character") assign the character of length one (value) to the elements in column assay of the slot phenoData of object.

pdim(object)

signature(object = "cellHTS"). Obtain the plate dimension for the data stored in object.

nbatch(object)

signature(object = "cellHTS"). Obtain the total number of batches for the data stored in object.

compare2cellHTS(x, y)

signature(x = "cellHTS", y = "cellHTS"). Compares two cellHTS objects, x and y, returning TRUE if they are from the same experiment (i.e. if they derive from the same initial cellHTS object), or FALSE otherwise.

Methods with functionality derived from class NChannelSet: channel, channelNames, channelNames<-, selectChannels, object[features, samples], sampleNames

Methods with functionality derived from eSet: annotation, assayData, assayData<-, classVersion, classVersion<-, dim, dims, experimentData, featureData, phenoData, phenoData<-, pubMedIds, sampleNames, sampleNames<-, storageMode, varMetadata, isCurrent, isVersioned.

Additional methods:

initialize

used internally for creating objects

show

invoked automatically when the object is displayed to the screen. It prints a summary of the object.

state

Access the state slot of a cellHTS instance.

annotate

Annotate the cellHTS object using the screen annotation file.

configure

Configure the cellHTS object using the the screen description file, the screen configuration file and the screen log file.

writeTab

Write the contents of assayData slot of a cellHTS object to a tab-delimited file.

ROC

Construct an object of S4 class ROC, which represents a receiver-operator-characteristic curve, from the data of the annotated positive and negative controls in a scored cellHTS object.

meanSdPlot(x)

signature(x = "cellHTS") plots row standard deviations across samples versus row means across samples for data stored in slot assayData of a cellHTS object. If there are multiple channels, row standard deviations and row means are calculated across samples for each channel separately. Only wells containing "sample" are considered. See meanSdPlot for more details about this function.

Author(s)

Ligia P. Bras ligia@ebi.ac.uk, Wolfgang Huber huber@ebi.ac.uk

See Also

NChannelSet readPlateList annotate configure writeTab state Data normalizePlates ROC

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
    showClass("cellHTS")
    showMethods(class="cellHTS")
  
    ## An empty cellHTS
    obj <- new("cellHTS")

    data("KcViabSmall")
    KcViabSmall
    state(KcViabSmall)
    ## Replicate 1 as a cellHTS object
    y <- KcViabSmall[,1] 
    compare2cellHTS(KcViabSmall, y)
    data("KcViab")
    compare2cellHTS(KcViab, KcViabSmall)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.