Obtains the adjusted p-values for the modified gatekeeping procedures for multiplicity problems involving serial and parallel logical restrictions.

fmodmix(
  p,
  family = NULL,
  serial,
  parallel = NULL,
  gamma,
  test = "hommel",
  exhaust = TRUE
)

Arguments

p

The raw p-values for elementary hypotheses.

family

The matrix of family indicators for the hypotheses.

serial

The matrix of serial rejection set for the hypotheses.

parallel

The matrix of parallel rejection set for the hypotheses.

gamma

The truncation parameters for each family. The truncation parameter for the last family is automatically set to 1.

test

The component multiple testing procedure. Options include "holm", "hochberg", or "hommel". Defaults to "hommel".

exhaust

Whether to use alpha-exhausting component testing procedure for the last family with active hypotheses. It defaults to TRUE.

Value

A list with the following components:

  • inthyp: The indicator matrix for the intersection hypotheses.

  • pinter: The local p-values for the intersection hypotheses.

  • padj: The adjusted p-values for the elementary hypotheses.

References

Alex Dmitrienko, George Kordzakhia, and Thomas Brechenmacher. Mixture-based gatekeeping procedures for multiplicity problems with multiple sequences of hypotheses. Journal of Biopharmaceutical Statistics. 2016; 26(4):758–780.

George Kordzakhia, Thomas Brechenmacher, Eiji Ishida, Alex Dmitrienko, Winston Wenxiang Zheng, and David Fuyuan Li. An enhanced mixture method for constructing gatekeeping procedures in clinical trials. Journal of Biopharmaceutical Statistics. 2018; 28(1):113–128.

Author

Kaifeng Lu, kaifenglu@gmail.com

Examples


p <- c(0.0194, 0.0068, 0.0271, 0.0088, 0.0370, 0.0018, 0.0814, 0.0066)
family <- matrix(c(1, 1, 0, 0, 0, 0, 0, 0,
                   0, 0, 1, 1, 0, 0, 0, 0,
                   0, 0, 0, 0, 1, 1, 0, 0,
                   0, 0, 0, 0, 0, 0, 1, 1),
                 nrow=4, byrow=TRUE)

serial <- matrix(c(0, 0, 0, 0, 0, 0, 0, 0,
                   0, 0, 0, 0, 0, 0, 0, 0,
                   1, 0, 0, 0, 0, 0, 0, 0,
                   0, 1, 0, 0, 0, 0, 0, 0,
                   0, 0, 1, 0, 0, 0, 0, 0,
                   0, 0, 0, 1, 0, 0, 0, 0,
                   0, 0, 0, 0, 1, 0, 0, 0,
                   0, 0, 0, 0, 0, 1, 0, 0),
                 nrow=8, byrow=TRUE)

parallel <- matrix(0, 8, 8)
gamma <- c(0.6, 0.6, 0.6, 1)
fmodmix(p, family, serial, parallel, gamma, test = "hommel", exhaust = TRUE)
#> $inthyp
#>        [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
#>   [1,]    1    1    1    1    1    1    1    1
#>   [2,]    1    1    1    1    1    1    1    0
#>   [3,]    1    1    1    1    1    1    0    1
#>   [4,]    1    1    1    1    1    1    0    0
#>   [5,]    1    1    1    1    1    0    1    1
#>   [6,]    1    1    1    1    1    0    1    0
#>   [7,]    1    1    1    1    1    0    0    1
#>   [8,]    1    1    1    1    1    0    0    0
#>   [9,]    1    1    1    1    0    1    1    1
#>  [10,]    1    1    1    1    0    1    1    0
#>  [11,]    1    1    1    1    0    1    0    1
#>  [12,]    1    1    1    1    0    1    0    0
#>  [13,]    1    1    1    1    0    0    1    1
#>  [14,]    1    1    1    1    0    0    1    0
#>  [15,]    1    1    1    1    0    0    0    1
#>  [16,]    1    1    1    1    0    0    0    0
#>  [17,]    1    1    1    0    1    1    1    1
#>  [18,]    1    1    1    0    1    1    1    0
#>  [19,]    1    1    1    0    1    1    0    1
#>  [20,]    1    1    1    0    1    1    0    0
#>  [21,]    1    1    1    0    1    0    1    1
#>  [22,]    1    1    1    0    1    0    1    0
#>  [23,]    1    1    1    0    1    0    0    1
#>  [24,]    1    1    1    0    1    0    0    0
#>  [25,]    1    1    1    0    0    1    1    1
#>  [26,]    1    1    1    0    0    1    1    0
#>  [27,]    1    1    1    0    0    1    0    1
#>  [28,]    1    1    1    0    0    1    0    0
#>  [29,]    1    1    1    0    0    0    1    1
#>  [30,]    1    1    1    0    0    0    1    0
#>  [31,]    1    1    1    0    0    0    0    1
#>  [32,]    1    1    1    0    0    0    0    0
#>  [33,]    1    1    0    1    1    1    1    1
#>  [34,]    1    1    0    1    1    1    1    0
#>  [35,]    1    1    0    1    1    1    0    1
#>  [36,]    1    1    0    1    1    1    0    0
#>  [37,]    1    1    0    1    1    0    1    1
#>  [38,]    1    1    0    1    1    0    1    0
#>  [39,]    1    1    0    1    1    0    0    1
#>  [40,]    1    1    0    1    1    0    0    0
#>  [41,]    1    1    0    1    0    1    1    1
#>  [42,]    1    1    0    1    0    1    1    0
#>  [43,]    1    1    0    1    0    1    0    1
#>  [44,]    1    1    0    1    0    1    0    0
#>  [45,]    1    1    0    1    0    0    1    1
#>  [46,]    1    1    0    1    0    0    1    0
#>  [47,]    1    1    0    1    0    0    0    1
#>  [48,]    1    1    0    1    0    0    0    0
#>  [49,]    1    1    0    0    1    1    1    1
#>  [50,]    1    1    0    0    1    1    1    0
#>  [51,]    1    1    0    0    1    1    0    1
#>  [52,]    1    1    0    0    1    1    0    0
#>  [53,]    1    1    0    0    1    0    1    1
#>  [54,]    1    1    0    0    1    0    1    0
#>  [55,]    1    1    0    0    1    0    0    1
#>  [56,]    1    1    0    0    1    0    0    0
#>  [57,]    1    1    0    0    0    1    1    1
#>  [58,]    1    1    0    0    0    1    1    0
#>  [59,]    1    1    0    0    0    1    0    1
#>  [60,]    1    1    0    0    0    1    0    0
#>  [61,]    1    1    0    0    0    0    1    1
#>  [62,]    1    1    0    0    0    0    1    0
#>  [63,]    1    1    0    0    0    0    0    1
#>  [64,]    1    1    0    0    0    0    0    0
#>  [65,]    1    0    1    1    1    1    1    1
#>  [66,]    1    0    1    1    1    1    1    0
#>  [67,]    1    0    1    1    1    1    0    1
#>  [68,]    1    0    1    1    1    1    0    0
#>  [69,]    1    0    1    1    1    0    1    1
#>  [70,]    1    0    1    1    1    0    1    0
#>  [71,]    1    0    1    1    1    0    0    1
#>  [72,]    1    0    1    1    1    0    0    0
#>  [73,]    1    0    1    1    0    1    1    1
#>  [74,]    1    0    1    1    0    1    1    0
#>  [75,]    1    0    1    1    0    1    0    1
#>  [76,]    1    0    1    1    0    1    0    0
#>  [77,]    1    0    1    1    0    0    1    1
#>  [78,]    1    0    1    1    0    0    1    0
#>  [79,]    1    0    1    1    0    0    0    1
#>  [80,]    1    0    1    1    0    0    0    0
#>  [81,]    1    0    1    0    1    1    1    1
#>  [82,]    1    0    1    0    1    1    1    0
#>  [83,]    1    0    1    0    1    1    0    1
#>  [84,]    1    0    1    0    1    1    0    0
#>  [85,]    1    0    1    0    1    0    1    1
#>  [86,]    1    0    1    0    1    0    1    0
#>  [87,]    1    0    1    0    1    0    0    1
#>  [88,]    1    0    1    0    1    0    0    0
#>  [89,]    1    0    1    0    0    1    1    1
#>  [90,]    1    0    1    0    0    1    1    0
#>  [91,]    1    0    1    0    0    1    0    1
#>  [92,]    1    0    1    0    0    1    0    0
#>  [93,]    1    0    1    0    0    0    1    1
#>  [94,]    1    0    1    0    0    0    1    0
#>  [95,]    1    0    1    0    0    0    0    1
#>  [96,]    1    0    1    0    0    0    0    0
#>  [97,]    1    0    0    1    1    1    1    1
#>  [98,]    1    0    0    1    1    1    1    0
#>  [99,]    1    0    0    1    1    1    0    1
#> [100,]    1    0    0    1    1    1    0    0
#> [101,]    1    0    0    1    1    0    1    1
#> [102,]    1    0    0    1    1    0    1    0
#> [103,]    1    0    0    1    1    0    0    1
#> [104,]    1    0    0    1    1    0    0    0
#> [105,]    1    0    0    1    0    1    1    1
#> [106,]    1    0    0    1    0    1    1    0
#> [107,]    1    0    0    1    0    1    0    1
#> [108,]    1    0    0    1    0    1    0    0
#> [109,]    1    0    0    1    0    0    1    1
#> [110,]    1    0    0    1    0    0    1    0
#> [111,]    1    0    0    1    0    0    0    1
#> [112,]    1    0    0    1    0    0    0    0
#> [113,]    1    0    0    0    1    1    1    1
#> [114,]    1    0    0    0    1    1    1    0
#> [115,]    1    0    0    0    1    1    0    1
#> [116,]    1    0    0    0    1    1    0    0
#> [117,]    1    0    0    0    1    0    1    1
#> [118,]    1    0    0    0    1    0    1    0
#> [119,]    1    0    0    0    1    0    0    1
#> [120,]    1    0    0    0    1    0    0    0
#> [121,]    1    0    0    0    0    1    1    1
#> [122,]    1    0    0    0    0    1    1    0
#> [123,]    1    0    0    0    0    1    0    1
#> [124,]    1    0    0    0    0    1    0    0
#> [125,]    1    0    0    0    0    0    1    1
#> [126,]    1    0    0    0    0    0    1    0
#> [127,]    1    0    0    0    0    0    0    1
#> [128,]    1    0    0    0    0    0    0    0
#> [129,]    0    1    1    1    1    1    1    1
#> [130,]    0    1    1    1    1    1    1    0
#> [131,]    0    1    1    1    1    1    0    1
#> [132,]    0    1    1    1    1    1    0    0
#> [133,]    0    1    1    1    1    0    1    1
#> [134,]    0    1    1    1    1    0    1    0
#> [135,]    0    1    1    1    1    0    0    1
#> [136,]    0    1    1    1    1    0    0    0
#> [137,]    0    1    1    1    0    1    1    1
#> [138,]    0    1    1    1    0    1    1    0
#> [139,]    0    1    1    1    0    1    0    1
#> [140,]    0    1    1    1    0    1    0    0
#> [141,]    0    1    1    1    0    0    1    1
#> [142,]    0    1    1    1    0    0    1    0
#> [143,]    0    1    1    1    0    0    0    1
#> [144,]    0    1    1    1    0    0    0    0
#> [145,]    0    1    1    0    1    1    1    1
#> [146,]    0    1    1    0    1    1    1    0
#> [147,]    0    1    1    0    1    1    0    1
#> [148,]    0    1    1    0    1    1    0    0
#> [149,]    0    1    1    0    1    0    1    1
#> [150,]    0    1    1    0    1    0    1    0
#> [151,]    0    1    1    0    1    0    0    1
#> [152,]    0    1    1    0    1    0    0    0
#> [153,]    0    1    1    0    0    1    1    1
#> [154,]    0    1    1    0    0    1    1    0
#> [155,]    0    1    1    0    0    1    0    1
#> [156,]    0    1    1    0    0    1    0    0
#> [157,]    0    1    1    0    0    0    1    1
#> [158,]    0    1    1    0    0    0    1    0
#> [159,]    0    1    1    0    0    0    0    1
#> [160,]    0    1    1    0    0    0    0    0
#> [161,]    0    1    0    1    1    1    1    1
#> [162,]    0    1    0    1    1    1    1    0
#> [163,]    0    1    0    1    1    1    0    1
#> [164,]    0    1    0    1    1    1    0    0
#> [165,]    0    1    0    1    1    0    1    1
#> [166,]    0    1    0    1    1    0    1    0
#> [167,]    0    1    0    1    1    0    0    1
#> [168,]    0    1    0    1    1    0    0    0
#> [169,]    0    1    0    1    0    1    1    1
#> [170,]    0    1    0    1    0    1    1    0
#> [171,]    0    1    0    1    0    1    0    1
#> [172,]    0    1    0    1    0    1    0    0
#> [173,]    0    1    0    1    0    0    1    1
#> [174,]    0    1    0    1    0    0    1    0
#> [175,]    0    1    0    1    0    0    0    1
#> [176,]    0    1    0    1    0    0    0    0
#> [177,]    0    1    0    0    1    1    1    1
#> [178,]    0    1    0    0    1    1    1    0
#> [179,]    0    1    0    0    1    1    0    1
#> [180,]    0    1    0    0    1    1    0    0
#> [181,]    0    1    0    0    1    0    1    1
#> [182,]    0    1    0    0    1    0    1    0
#> [183,]    0    1    0    0    1    0    0    1
#> [184,]    0    1    0    0    1    0    0    0
#> [185,]    0    1    0    0    0    1    1    1
#> [186,]    0    1    0    0    0    1    1    0
#> [187,]    0    1    0    0    0    1    0    1
#> [188,]    0    1    0    0    0    1    0    0
#> [189,]    0    1    0    0    0    0    1    1
#> [190,]    0    1    0    0    0    0    1    0
#> [191,]    0    1    0    0    0    0    0    1
#> [192,]    0    1    0    0    0    0    0    0
#> [193,]    0    0    1    1    1    1    1    1
#> [194,]    0    0    1    1    1    1    1    0
#> [195,]    0    0    1    1    1    1    0    1
#> [196,]    0    0    1    1    1    1    0    0
#> [197,]    0    0    1    1    1    0    1    1
#> [198,]    0    0    1    1    1    0    1    0
#> [199,]    0    0    1    1    1    0    0    1
#> [200,]    0    0    1    1    1    0    0    0
#> [201,]    0    0    1    1    0    1    1    1
#> [202,]    0    0    1    1    0    1    1    0
#> [203,]    0    0    1    1    0    1    0    1
#> [204,]    0    0    1    1    0    1    0    0
#> [205,]    0    0    1    1    0    0    1    1
#> [206,]    0    0    1    1    0    0    1    0
#> [207,]    0    0    1    1    0    0    0    1
#> [208,]    0    0    1    1    0    0    0    0
#> [209,]    0    0    1    0    1    1    1    1
#> [210,]    0    0    1    0    1    1    1    0
#> [211,]    0    0    1    0    1    1    0    1
#> [212,]    0    0    1    0    1    1    0    0
#> [213,]    0    0    1    0    1    0    1    1
#> [214,]    0    0    1    0    1    0    1    0
#> [215,]    0    0    1    0    1    0    0    1
#> [216,]    0    0    1    0    1    0    0    0
#> [217,]    0    0    1    0    0    1    1    1
#> [218,]    0    0    1    0    0    1    1    0
#> [219,]    0    0    1    0    0    1    0    1
#> [220,]    0    0    1    0    0    1    0    0
#> [221,]    0    0    1    0    0    0    1    1
#> [222,]    0    0    1    0    0    0    1    0
#> [223,]    0    0    1    0    0    0    0    1
#> [224,]    0    0    1    0    0    0    0    0
#> [225,]    0    0    0    1    1    1    1    1
#> [226,]    0    0    0    1    1    1    1    0
#> [227,]    0    0    0    1    1    1    0    1
#> [228,]    0    0    0    1    1    1    0    0
#> [229,]    0    0    0    1    1    0    1    1
#> [230,]    0    0    0    1    1    0    1    0
#> [231,]    0    0    0    1    1    0    0    1
#> [232,]    0    0    0    1    1    0    0    0
#> [233,]    0    0    0    1    0    1    1    1
#> [234,]    0    0    0    1    0    1    1    0
#> [235,]    0    0    0    1    0    1    0    1
#> [236,]    0    0    0    1    0    1    0    0
#> [237,]    0    0    0    1    0    0    1    1
#> [238,]    0    0    0    1    0    0    1    0
#> [239,]    0    0    0    1    0    0    0    1
#> [240,]    0    0    0    1    0    0    0    0
#> [241,]    0    0    0    0    1    1    1    1
#> [242,]    0    0    0    0    1    1    1    0
#> [243,]    0    0    0    0    1    1    0    1
#> [244,]    0    0    0    0    1    1    0    0
#> [245,]    0    0    0    0    1    0    1    1
#> [246,]    0    0    0    0    1    0    1    0
#> [247,]    0    0    0    0    1    0    0    1
#> [248,]    0    0    0    0    1    0    0    0
#> [249,]    0    0    0    0    0    1    1    1
#> [250,]    0    0    0    0    0    1    1    0
#> [251,]    0    0    0    0    0    1    0    1
#> [252,]    0    0    0    0    0    1    0    0
#> [253,]    0    0    0    0    0    0    1    1
#> [254,]    0    0    0    0    0    0    1    0
#> [255,]    0    0    0    0    0    0    0    1
#> 
#> $pinter
#>   [1] 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360
#>  [10] 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360
#>  [19] 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360
#>  [28] 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360
#>  [37] 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360
#>  [46] 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360
#>  [55] 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360 0.01360
#>  [64] 0.01360 0.02425 0.02425 0.02425 0.02425 0.02425 0.02425 0.02425 0.02425
#>  [73] 0.02425 0.02425 0.02425 0.02425 0.02425 0.02425 0.02425 0.02425 0.00900
#>  [82] 0.00900 0.00900 0.00900 0.02425 0.01940 0.02425 0.01940 0.00900 0.00900
#>  [91] 0.00900 0.00900 0.02425 0.01940 0.02425 0.01940 0.02425 0.02425 0.02425
#> [100] 0.02425 0.02425 0.02425 0.02425 0.02425 0.02425 0.02425 0.02425 0.02425
#> [109] 0.02425 0.02425 0.02425 0.02425 0.00900 0.00900 0.00900 0.00900 0.02425
#> [118] 0.01940 0.02425 0.01940 0.00900 0.00900 0.00900 0.00900 0.02425 0.01940
#> [127] 0.02425 0.01940 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850
#> [136] 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850
#> [145] 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850
#> [154] 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850
#> [163] 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00680
#> [172] 0.00680 0.00850 0.00850 0.00680 0.00680 0.00850 0.00850 0.00850 0.00850
#> [181] 0.00850 0.00850 0.00850 0.00850 0.00850 0.00850 0.00680 0.00680 0.00850
#> [190] 0.00850 0.00680 0.00680 0.01760 0.01760 0.01760 0.01760 0.01760 0.01760
#> [199] 0.01760 0.01760 0.01760 0.01760 0.01760 0.01760 0.01760 0.01760 0.01760
#> [208] 0.01760 0.00900 0.00900 0.00900 0.00900 0.03300 0.02710 0.03300 0.02710
#> [217] 0.00900 0.00900 0.00900 0.00900 0.03300 0.02710 0.03300 0.02710 0.01100
#> [226] 0.01100 0.01100 0.01100 0.01100 0.01100 0.01100 0.01100 0.01100 0.01100
#> [235] 0.00880 0.00880 0.01100 0.01100 0.00880 0.00880 0.00360 0.00360 0.00360
#> [244] 0.00360 0.03300 0.03700 0.03300 0.03700 0.00225 0.00225 0.00180 0.00180
#> [253] 0.01320 0.08140 0.00660
#> 
#> $padj
#> [1] 0.02425 0.01360 0.03300 0.02425 0.03700 0.02425 0.08140 0.03300
#>