PoisMixMean function

Calculate the conditional per-cluster mean of each observation

Calculate the conditional per-cluster mean of each observation

This function is used to calculate the conditional per-cluster mean expression for all observations. This value corresponds to μ=(μijlk)=(w^iλ^jk)\mu = (\mu_{ijlk}) = (\hat{w}_i \hat{\lambda}_{jk})

for the PMM-I model and μ=(μijlk)=(w^isjlλ^jk)\mu = (\mu_{ijlk}) = (\hat{w}_i s_{jl}\hat{\lambda}_{jk})

for the PMM-II model.

PoisMixMean(y, g, conds, s, lambda)

Arguments

  • y: (n x q) matrix of observed counts for n observations and q variables
  • g: Number of clusters
  • conds: Vector of length q defining the condition (treatment group) for each variable (column) in y
  • s: Estimate of normalized per-variable library size
  • lambda: (d x g) matrix containing the current estimate of lambda, where d is the number of conditions (treatment groups) and g is the number of clusters

Returns

A list of length g containing the (n x q) matrices of mean expression for all observations, conditioned on each of the g clusters

References

Rau, A., Maugis-Rabusseau, C., Martin-Magniette, M.-L., Celeux G. (2015). Co-expression analysis of high-throughput transcriptome sequencing data with Poisson mixture models. Bioinformatics, 31(9):1420-1427.

Rau, A., Celeux, G., Martin-Magniette, M.-L., Maugis-Rabusseau, C. (2011). Clustering high-throughput sequencing data with Poisson mixture models. Inria Research Report 7786. Available at https://inria.hal.science/inria-00638082.

Author(s)

Andrea Rau

See Also

PoisMixClus for Poisson mixture model estimation and model selection

Examples

set.seed(12345) ## Simulate data as shown in Rau et al. (2011) ## Library size setting "A", high cluster separation ## n = 200 observations simulate <- PoisMixSim(n = 200, libsize = "A", separation = "high") y <- simulate$y conds <- simulate$conditions s <- colSums(y) / sum(y) ## TC estimate of lib size ## Run the PMM-II model for g = 3 ## "TC" library size estimate, EM algorithm run <- PoisMixClus(y, g = 3, norm = "TC", conds = conds) pi.est <- run$pi lambda.est <- run$lambda ## Calculate the per-cluster mean for each observation means <- PoisMixMean(y, g = 3, conds, s, lambda.est)
  • Maintainer: Andrea Rau
  • License: GPL (>= 3)
  • Last published: 2023-09-05

Useful links