unifilter {xps} | R Documentation

## Function for Applying an UniFilter to an ExprTreeSet

### Description

This function applies an `UniFilter` to an `ExprTreeSet`.

### Usage

    unifilter(xps.expr,
              filename   = character(0),
              filedir    = getwd(),
              filter     = NULL,
              minfilters = 999,
              logbase    = "log2",
              group      = character(0),
              treename   = "UniTest",
              xps.fltr   = NULL,
              xps.call   = NULL,
              update     = FALSE,
              verbose    = TRUE)

    xpsUniFilter(object, ...)

### Arguments

`xps.expr` | object of class `ExprTreeSet`.
`filename` | file name of ROOT filter file.
`filedir` | system directory where ROOT filter file should be stored.
`filter` | object of class `UniFilter`.
`minfilters` | minimum number of initialized filter methods to satisfy (default is all filters).
`logbase` | convert data to logarithm of base: `"0"`, `"log"`, `"log2"` (default), `"log10"`
`group` | a character vector assigning the trees of `xps.expr` to one of two groups.
`treename` | tree name to be used in ROOT filter file.
`xps.fltr` | optional object of class `FilterTreeSet`.
`xps.call` | optional object of class `CallTreeSet`.
`update` | logical. If `TRUE` the existing ROOT filter file `filename` will be updated.
`verbose` | logical, if `TRUE` print status information.
`object` | object of class `ExprTreeSet`.
`...` | same arguments as function `unifilter`.

### Details

This function applies the different filters initialized with constructor `UniFilter` to the `ExprTreeSet` `xps.expr`.

Slot `minfilters` determines the minimum number of initialized filters, which must be satisfied so that the mask is set to `flag=1`. For `minfilters=1` at least one filter must be satisfied, equivalent to logical ‘OR’; for `minfilters=999` all filters must be satisfied, equivalent to logical ‘AND’.

If pre-filtering should be done before applying function `unifilter` then a `FilterTreeSet` `xps.fltr` must be supplied, created with function `prefilter`.

If method `callFilter` was initialized with constructor `UniFilter` then `CallTreeSet` `xps.call` must be supplied, usually created with function `mas5.call`.

### Value

An `AnalysisTreeSet`

### Note

Internally, slot `group` will be converted to integer values using `as.integer(as.factor(group))`, thus `group=c("GrpA","GrpA","GrpB","GrpB")` will result in a fold-change of `fc=mean(GrpB)/mean(GrpA)`.

### Author(s)

Christian Stratowa

### See Also

`UniFilter`, `prefilter`

### Examples

    ## Not run:
    ## first, load ROOT scheme file and ROOT data file
    scheme.test3 <- root.scheme(paste(.path.package("xps"),"schemes/SchemeTest3.root",sep="/"))
    data.test3 <- root.data(scheme.test3, paste(.path.package("xps"),"rootdata/DataTest3_cel.root",sep="/"))

    ## second, create an ExprTreeSet
    data.rma <- rma(data.test3,"tmp_Test3_RMA",tmpdir="",background="pmonly",normalize=TRUE,verbose=FALSE)
    ## note: do not copy/paste this code, it is necessary only because R CMD check fails since it does not find tmp_Test3_RMA.root:
    data.rma@rootfile <- paste(.path.package("xps"),"rootdata/tmp_Test3RMA.root",sep="/")
    data.rma@filedir  <- paste(.path.package("xps"),"rootdata",sep="/")

    ## third, construct an UniFilter
    unifltr <- UniFilter(unitest=c("t.test","two.sided","none",0,0.0,FALSE,0.95,TRUE),foldchange=c(1.3,"both"),unifilter=c(0.1,"pval"))

    ## finally, create an AnalysisTreeSet
    rma.ufr <- unifilter(data.rma,"tmp_Test3Unifilter",getwd(),unifltr,group=c("GrpA","GrpA","GrpB","GrpB"),verbose=FALSE)
    str(rma.ufr)
    ## End(Not run)

[Package xps version 1.4.10 Index]