emfit {EBarrays}R Documentation

Implements EM algorithm for gene expression mixture model

Description

Implements the EM algorithm for gene expression mixture model

Usage

emfit(data,
      family,
      hypotheses,
      theta.init = NULL, p.init = NULL,
      num.iter = 20,
      verbose = getOption("verbose"),
      trace = TRUE,
      optim.control = list())

Arguments

data a matrix or an an object of class ``exprSet''
family an object of class ``ebarraysFamily'' or a characterstring which can be coerced to one. Currently, only the characters "GG" and "LNN" are valid. Other families can be supplied by constructing them explicitly.
hypotheses an object of class ``ebarraysPatterns'' representing the hypotheses of interest. Such patterns can be generated by the function ebPatterns
theta.init initial values of theta. Should be appropriate for the corresponding family. If omitted, defaults are calculated based on the family.
p.init initial values of mixture probabilities. If omitted, all hypotheses are initially taken as equally likely.
num.iter number of EM iterations
verbose logical or numeric (0,1,2) indicating desired level of information printed for the user
trace whther the result should have slots thetaTrace and probTrace, matrices giving values for all iterations
optim.control list passed unchanged to optim for finer control

Value

an object of class ``ebarraysEmFit'', that can be summarized by show() and used to generate posterior probabilities using postprob

Note

emfit is actually a generic function, with methods for .

Author(s)

Christina Kendziorski, Michael Newton and Deepayan Sarkar

References

See UW Madison Biostatistics and Medical Informatics Technical Report 166, ``On parametric empirical Bayes methods for comparing multiple groups using replicated gene expression profiles,'' by C.M. Kendziorski, M.A. Newton, H. Lan, and M.N. Gould. See http://www.biostat.wisc.edu/~kendzior/

See Also

ebPatterns, ebarraysFamily-class

Examples

data(eset) ## from Biobase
patterns <- ebPatterns(c("1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1",
                         "1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2"))
gg.fit <- emfit(data = eset, family = "GG", hypotheses = patterns,
                verbose = TRUE)
##                theta.init = c(10, 1, 1), p.init = c(.99, .01))
show(gg.fit)

[Package Contents]