MC.Xdc.statistics function

Size and Power for the Several-Sample DM Parameter Test Comparison

Size and Power for the Several-Sample DM Parameter Test Comparison

This Monte-Carlo simulation procedure provides the power and size of the several sample Dirichlet-Multinomial parameter test comparison, using the likelihood-ratio-test statistics.

MC.Xdc.statistics(group.Nrs, numMC = 10, alphap, type = "ha", siglev = 0.05, est = "mom")

Arguments

  • group.Nrs: A list specifying the number of reads/sequence depth for each sample in a group with one group per list entry.

  • numMC: Number of Monte-Carlo experiments. In practice this should be at least 1,000.

  • alphap: If "hnull": A matrix where rows are vectors of alpha parameters for the reference group.

    If "ha": A matrix consisting of vectors of alpha parameters for each taxa in each group.

  • type: If "hnull": Computes the size of the test.

    If "ha": Computes the power of the test. (default)

  • siglev: Significance level for size of the test / power calculation. The default is 0.05.

  • est: The type of parameter estimator to be used with the Likelihood-ratio-test statistics, 'mle' or 'mom'. Default value is 'mom'. (See Note 2 in details)

Returns

Size of the test statistics (under "hnull") or power (under "ha") of the test.

Details

  1. Note 1: Though the test statistic supports an unequal number of reads across samples, the performance has not yet been fully tested.
  2. Note 2: 'mle' will take significantly longer time and may not be optimal for small sample sizes; 'mom' will provide a more conservative result in such a case.
  3. Note 3: All components of alphap should be non-zero or it may result in errors and/or invalid results.

Examples

data(saliva) data(throat) data(tonsils) ### Get a list of dirichlet-multinomial parameters for the data fit.saliva <- DM.MoM(saliva) fit.throat <- DM.MoM(throat) fit.tonsils <- DM.MoM(tonsils) ### Set up the number of Monte-Carlo experiments ### We use 1 for speed, should be at least 1,000 numMC <- 1 ### Generate the number of reads per sample ### The first number is the number of reads and the second is the number of subjects nrsGrp1 <- rep(12000, 9) nrsGrp2 <- rep(12000, 11) nrsGrp3 <- rep(12000, 12) group.Nrs <- list(nrsGrp1, nrsGrp2, nrsGrp3) ### Computing size of the test statistics (Type I error) alphap <- fit.saliva$gamma pval1 <- MC.Xdc.statistics(group.Nrs, numMC, alphap, "hnull") pval1 ### Computing Power of the test statistics (Type II error) alphap <- rbind(fit.saliva$gamma, fit.throat$gamma, fit.tonsils$gamma) pval2 <- MC.Xdc.statistics(group.Nrs, numMC, alphap) pval2
  • Maintainer: Berkley Shands
  • License: Apache License (== 2.0)
  • Last published: 2019-08-31

Useful links