Create a new PBMDesign object of protein binding microarray probe design information. Alternatively, the function can be called on a PBMExperiment to extract the probe design information associated with experimental data.

PBMDesign(object, ...)

# S4 method for data.frame
PBMDesign(object, ...)

# S4 method for DataFrame
PBMDesign(object, ...)

# S4 method for PBMExperiment
PBMDesign(object)

Arguments

object

a data.frame with each row corresponding to a probe on the array. Must include `Sequence' and (unique) `probeID' columns, along with any other metadata for probes, e.g. array `Row' or `Column' spatial coordinates. Alternatively, a PBMExperiment object to return the associated PBMDesign object.

...

optional probe design parameters to be defined as part of the PBMDesign object. See the PBMDesign class definition for a list of probe design parameters. Important parameters are as described in the Details section below.

Value

PBMDesign object.

Details

Probe design parameters can be specified by name. The following are a couple important parameters which are defined by default for universal PBM designs in the upbmAux package.

  1. probeFilter: optional named list of probe filters to be used to subset probes during data analysis steps. List names must correspond to columns in `design'. List entries must be single-parameter functions to be called on the corresponding column to return a logical vector of probes to keep (TRUE) and drop (FALSE) during analysis.

  2. probeTrim: optional integer vector of length 2 specifying start and end positions in probe `Sequence' to use in analysis steps.

References

See also

Examples

## Universal array designs included with the Universal PBM Analysis Suite software ## available at the referenced link can be read in as data frames or tibbles (here ## as an object 'mydesign') and converted to a PBMDesign object. ## The 'probeFilter=' and 'probeTrim=' settings here filter to de Bruijn sequences ## and use only the first 36 bases of each probe sequence for downstream analysis. if (FALSE) { PBMDesign( object = mydesign, probeFilter = list(probeID = function(x) { grepl("^dBr", x) }), probeTrim = c(1, 36) ) }