Learn R Programming

cellHTS (version 1.42.0)

readPlateData: Read a collection of plate reader data files

Description

Reads a collection of plate reader data files into a data.frame. The names of the files, plus additional information (plate number, repeat number) is expected in a tab-delimited table specified by the argument x.

Usage

readPlateData(filename, path=dirname(filename), name, importFun, verbose=TRUE, plateType)

Arguments

filename
the name of the file table (see details). This argument is just passed on to the read.table function, so any of the valid argument types for read.table are valid here, too.
name
a character of length 1 with the experiment name.
path
a character of length 1 indicating the path in which to find the plate reader files. By default, it can extract the path from filename.
importFun
a function that should be used to read each plate result file. The default function works for plate reader data files. See details.
verbose
a logical value, if TRUE, the function reports some of its intermediate progress.
plateType
(deprecated argument) a character of length 1 giving the format of the plate: "96" for 96-well plate format, or "384" for a 384-well plate format.

Value

An object of class "cellHTS", which is currently implemented as a list with elements
name
copy of the input argument name
xraw
an array of dimension plateSize x number of plates x number of replicates x number of channels, containing the imported measurement data.
pdim
a numeric vector of length 2 containing the number of rows and columns in a plate. The product of these two numbers is the first dimension of xraw. This corresponds to the plate format used in the screen, and it is automatically determined from the plate result files. The allowed formats are 96-well or 384-well plates.
batch
an integer vector with the batch number (1, 2, ...) for each plate. Its length corresponds to the second dimension of of xraw.
plateList
a data.frame containing what was read from input file x, plus a column status of type character: it contains 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 representing the processing status of the object.

Details

The file table is expected to be a tab-delimited file with at least three columns, and column names Filename, Plate, and Replicate. The contents of the columns Plate and Replicate are expected to be integers. Further columns are allowed.

We distinguish between plates and plate result file. A plate result file contains the measurements results for all replicates and all channels of a plate, which is the physical carrier of the reagents.

importFun can be used to define other functions to import other data files, such as flow cytometry data files, etc. The importFun function should receive as an input the name of a result plate file to read, and return a list with two components:

  • The first component should be a 'data.frame' with the following slots:
    • well, a character vector with the well identifier in the plate.
    • val, the intensity values measured at each well.

  • The second component of this list should be a character vector containing a copy of the imported input data file (such as the output of readLines). It should be suitable to be used as input for writeLines, since it will be used to reproduce the intensity files that are linked in the HTML quality reports generated by writeReport.
  • For example, to import plate data files from EnVision plate reader, set importFun=getEnVisionRawData or importFun=getEnvisionCrosstalkCorrectedData. See function getEnVisionRawData.

    See Also

    getEnVisionRawData

    Examples

    Run this code
        datadir <- system.file("KcViabSmall", package = "cellHTS")
        x <- readPlateData("Platelist.txt", "KcViabSmall", path=datadir)
    
        ## To read data files obtained from an EnVision plate reader:
        datadir <- system.file("EnVisionExample", package = "cellHTS")
        x <- readPlateData("platelist.txt", "EnVisionEx",
              importFun=getEnVisionRawData, path=datadir)
    
           ## to get the cross talk corrected data:
           y <- readPlateData("platelist.txt", "EnVisionEx", 
               importFun=getEnVisionCrosstalkCorrectedData, path=datadir)
    
    

    Run the code above in your browser using DataLab