Type: | Package |
Title: | Optimal Thresholding Fisher's P-Value Combination Method |
Version: | 0.2.0 |
Author: | Hong Zhang and Zheyang Wu |
Maintainer: | Hong Zhang <hzhang@wpi.edu> |
Description: | We provide the cumulative distribution function (CDF), quantile, and statistical power calculator for a collection of thresholding Fisher's p-value combination methods, including Fisher's p-value combination method, truncated product method and, in particular, soft-thresholding Fisher's p-value combination method which is proven to be optimal in some context of signal detection. The p-value calculator for the omnibus version of these tests are also included. For reference, please see Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted. |
License: | GPL-2 |
Imports: | stats, sn, mvtnorm, Matrix |
Encoding: | UTF-8 |
LazyData: | true |
RoxygenNote: | 6.0.1 |
NeedsCompilation: | no |
Packaged: | 2018-03-21 02:51:25 UTC; Hong |
Repository: | CRAN |
Date/Publication: | 2018-03-21 12:05:33 UTC |
CDF of soft-thresholding Fisher's p-value combination statistic under the null hypothesis.
Description
CDF of soft-thresholding Fisher's p-value combination statistic under the null hypothesis.
Usage
p.soft(q, n, tau1, M = NULL)
Arguments
q |
- quantile, could be a vector. |
n |
- dimension parameter, i.e. the number of p-values to be combined. |
tau1 |
- truncation parameter=normalization parameter. tau1 > 0. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence. |
Value
The left-tail probability of the null distribution of soft-thresholding Fisher's p-value combination statistic at the given quantile.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
See Also
stat.soft
for the definition of the statistic.
Examples
pval <- runif(100)
softstat <- stat.soft(p=pval, tau1=0.05)
p.soft(q=softstat, n=100, tau1=0.05)
M = matrix(0.3,100,100) + diag(1-0.3,100)
p.soft(q=softstat, n=100, tau1=0.05, M=M)
CDF of omnibus soft-thresholding Fisher's p-value combination statistic under the null hypothesis.
Description
CDF of omnibus soft-thresholding Fisher's p-value combination statistic under the null hypothesis.
Usage
p.soft.omni(q, n, TAU1, M = NULL)
Arguments
q |
- quantile, could be a vector. |
n |
- dimension parameter, i.e. the number of p-values to be combined. |
TAU1 |
- a vector of truncation parameters (=normalization parameters). Must be in non-descending order. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence. |
Value
The left-tail probability of the null distribution of omnibus soft-thresholding Fisher's p-value combination statistic.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
See Also
stat.soft.omni
for the definition of the statistic.
Examples
q = 0.01
n = 20
TAU1 = c(0.01, 0.05, 0.5, 1)
M = matrix(0.3,20,20) + diag(1-0.3,20)
p.soft.omni(q=q, n=n, TAU1=TAU1, M=M)
CDF of thresholding Fisher's p-value combination statistic under the null hypothesis.
Description
CDF of thresholding Fisher's p-value combination statistic under the null hypothesis.
Usage
p.tfisher(q, n, tau1, tau2, M = NULL, mu = NULL, sigma2 = NULL,
p0 = NULL)
Arguments
q |
- quantile, could be a vector. |
n |
- dimension parameter, i.e. the number of p-values to be combined. |
tau1 |
- truncation parameter. 0 < tau1 <= 1. |
tau2 |
- normalization parameter. tau2 >= tau1. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence. |
mu |
- the mean of TFisher statistics. Default = NULL. |
sigma2 |
- the variance of TFisher statistics. Default = NULL. |
p0 |
- the point masse of TFisher statistics. Default = NULL. |
Value
The left-tail probability of the null distribution of thresholding Fisher's p-value combination statistic at the given quantile.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
See Also
stat.tfisher
for the definition of the statistic.
Examples
pval <- runif(20)
tfstat <- stat.tfisher(p=pval, tau1=0.25, tau2=0.75)
p.tfisher(q=tfstat, n=20, tau1=0.25, tau2=0.75)
M = matrix(0.3,20,20) + diag(1-0.3,20)
p.tfisher(q=tfstat, n=20, tau1=0.25, tau2=0.75, M=M)
CDF of omnibus thresholding Fisher's p-value combination statistic under the null hypothesis.
Description
CDF of omnibus thresholding Fisher's p-value combination statistic under the null hypothesis.
Usage
p.tfisher.omni(q, n, TAU1, TAU2, M = NULL, P0 = NULL)
Arguments
q |
- quantile, could be a vector. |
n |
- dimension parameter, i.e. the number of p-values to be combined. |
TAU1 |
- a vector of truncation parameters. Must be in non-descending order. |
TAU2 |
- a vector of normalization parameters. Must be in non-descending order. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence. |
P0 |
- a vector of point masses of TFisher statistics. Default = NULL. |
Value
The left-tail probability of the null distribution of omnibus thresholding Fisher's p-value combination statistic.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
See Also
stat.tfisher.omni
for the definition of the statistic.
Examples
q = 0.05
n = 20
TAU1 = c(0.01, 0.05, 0.5, 1)
TAU2 = c(0.1, 0.2, 0.5, 1)
M = matrix(0.3,20,20) + diag(1-0.3,20)
p.tfisher.omni(q=q, n=n, TAU1=TAU1, TAU2=TAU2, M=M)
CDF of truncated product method statistic under the null hypothesis.
Description
CDF of truncated product method statistic under the null hypothesis.
Usage
p.tpm(q, n, tau1, M = NULL)
Arguments
q |
- quantile, could be a vector. |
n |
- dimension parameter, i.e. the number of p-values to be combined. |
tau1 |
- truncation parameter. 0 < tau1 <= 1. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence. |
Value
The left-tail probability of the null distribution of truncated product method statistic at the given quantile.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
2. Zaykin, D.V., Zhivotovsky, L. A., Westfall, P.H. and Weir, B.S. (2002), Truncated product method for combining P-values. Genet. Epidemiol., 22: 170–185. doi:10.1002/gepi.0042
See Also
stat.tpm
for the definition of the statistic.
Examples
pval <- runif(100)
tpmstat <- stat.tpm(p=pval, tau1=0.05)
p.tpm(q=tpmstat, n=100, tau1=0.05)
M = matrix(0.3,100,100) + diag(1-0.3,100)
p.tpm(q=tpmstat, n=100, tau1=0.05, M=M)
CDF of omnibus truncated product method statistic under the null hypothesis.
Description
CDF of omnibus truncated product method statistic under the null hypothesis.
Usage
p.tpm.omni(q, n, TAU1, M = NULL)
Arguments
q |
- quantile, could be a vector. |
n |
- dimension parameter, i.e. the number of p-values to be combined. |
TAU1 |
- a vector of truncation parameters. Must be in non-descending order. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence |
Value
The left-tail probability of the null distribution of omnibus truncated product method statistic.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
See Also
stat.tpm.omni
for the definition of the statistic.
Examples
q = 0.05
n = 20
TAU1 = c(0.01, 0.05, 0.5, 1)
M = matrix(0.3,20,20) + diag(1-0.3,20)
p.tpm.omni(q=q, n=n, TAU1=TAU1, M=M)
Statistical power of soft-thresholding Fisher's p-value combination test under Gaussian mixture model.
Description
Statistical power of soft-thresholding Fisher's p-value combination test under Gaussian mixture model.
Usage
power.soft(alpha, n, tau1, eps = 0, mu = 0)
Arguments
alpha |
- type-I error rate. |
n |
- dimension parameter, i.e. the number of input p-values. |
tau1 |
- truncation parameter=normalization parameter. tau1 > 0. |
eps |
- mixing parameter of the Gaussian mixture. |
mu |
- mean of non standard Gaussian model. |
Details
We consider the following hypothesis test,
H_0: X_i\sim F_0, H_a: X_i\sim (1-\epsilon)F_0+\epsilon F_1
, where \epsilon
is the mixing parameter,
F_0
is the standard normal CDF and F = F_1
is the CDF of normal distribution with \mu
defined by mu and \sigma = 1
.
Value
Power of the soft-thresholding Fisher's p-value combination test.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
See Also
stat.soft
for the definition of the statistic.
Examples
alpha = 0.05
#If the alternative hypothesis Gaussian mixture with eps = 0.1 and mu = 1.2:#
power.soft(alpha, 100, 0.05, eps = 0.1, mu = 1.2)
Statistical power of thresholding Fisher's p-value combination test under Gaussian mixture model.
Description
Statistical power of thresholding Fisher's p-value combination test under Gaussian mixture model.
Usage
power.tfisher(alpha, n, tau1, tau2, eps = 0, mu = 0)
Arguments
alpha |
- type-I error rate. |
n |
- dimension parameter, i.e. the number of input p-values. |
tau1 |
- truncation parameter. 0 < tau1 <= 1. |
tau2 |
- normalization parameter. tau2 >= tau1. |
eps |
- mixing parameter of the Gaussian mixture. |
mu |
- mean of non standard Gaussian model. |
Details
We consider the following hypothesis test,
H_0: X_i\sim F_0, H_a: X_i\sim (1-\epsilon)F_0+\epsilon F_1
, where \epsilon
is the mixing parameter,
F_0
is the standard normal CDF and F = F_1
is the CDF of normal distribution with \mu
defined by mu and \sigma = 1
.
Value
Power of the thresholding Fisher's p-value combination test.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
See Also
stat.tfisher
for the definition of the statistic.
Examples
alpha = 0.05
#If the alternative hypothesis Gaussian mixture with eps = 0.1 and mu = 1.2:#
power.tfisher(alpha, 100, 0.05, 0.25, eps = 0.1, mu = 1.2)
Statistical power of truncated product method test under Gaussian mixture model.
Description
Statistical power of truncated product method test under Gaussian mixture model.
Usage
power.tpm(alpha, n, tau1, eps = 0, mu = 0)
Arguments
alpha |
- type-I error rate. |
n |
- dimension parameter, i.e. the number of input p-values. |
tau1 |
- truncation parameter. 0 < tau1 <= 1. tau1 > 0. |
eps |
- mixing parameter of the Gaussian mixture. |
mu |
- mean of non standard Gaussian model. |
Details
We consider the following hypothesis test,
H_0: X_i\sim F_0, H_a: X_i\sim (1-\epsilon)F_0+\epsilon F_1
, where \epsilon
is the mixing parameter,
F_0
is the standard normal CDF and F = F_1
is the CDF of normal distribution with \mu
defined by mu and \sigma = 1
.
Value
Power of the truncated product method test.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
See Also
stat.soft
for the definition of the statistic.
Examples
alpha = 0.05
#If the alternative hypothesis Gaussian mixture with eps = 0.1 and mu = 1.2:#
power.tpm(alpha, 100, 0.05, eps = 0.1, mu = 1.2)
Quantile of soft-thresholding Fisher's p-value combination statistic under the null hypothesis.
Description
Quantile of soft-thresholding Fisher's p-value combination statistic under the null hypothesis.
Usage
q.soft(p, n, tau1, M = NULL)
Arguments
p |
- a scalar left probability that defines the quantile. |
n |
- dimension parameter, i.e. the number of input p-values. |
tau1 |
- truncation parameter=normalization parameter. tau1 > 0. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence. |
Value
Quantile of soft-thresholding Fisher's p-value combination statistic.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
See Also
stat.soft
for the definition of the statistic.
Examples
## The 0.05 critical value of soft-thresholding statistic when n = 10:
q.soft(p=.99, n=20, tau1 = 0.05)
M = matrix(0.9,20,20) + diag(1-0.9,20)
q.soft(p=.99, n=20, tau1 = 0.05, M=M)
Quantile of thresholding Fisher's p-value combination statistic under the null hypothesis.
Description
Quantile of thresholding Fisher's p-value combination statistic under the null hypothesis.
Usage
q.tfisher(p, n, tau1, tau2, M = NULL)
Arguments
p |
- a scalar left probability that defines the quantile. |
n |
- dimension parameter, i.e. the number of input p-values. |
tau1 |
- truncation parameter. 0 < tau1 <= 1. |
tau2 |
- normalization parameter. tau2 >= tau1. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence. |
Value
Quantile of thresholding Fisher's p-value combination statistic.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
See Also
stat.tfisher
for the definition of the statistic.
Examples
## The 0.05 critical value of TFisher statistic when n = 10:
q.tfisher(p=.95, n=20, tau1=0.05, tau2=0.25)
## when corrrelated
M = matrix(0.3,20,20) + diag(1-0.3,20)
q.tfisher(p=.95, n=20, tau1=0.05, tau2=0.25, M=M)
Quantile of truncated product method statistic under the null hypothesis.
Description
Quantile of truncated product method statistic under the null hypothesis.
Usage
q.tpm(p, n, tau1, M = NULL)
Arguments
p |
- a scalar left probability that defines the quantile. |
n |
- dimension parameter, i.e. the number of input p-values. |
tau1 |
- truncation parameter. 0 < tau1 <= 1. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence. |
Value
Quantile of truncated product method statistic.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
2. Zaykin, D.V., Zhivotovsky, L. A., Westfall, P.H. and Weir, B.S. (2002), Truncated product method for combining P-values. Genet. Epidemiol., 22: 170–185. doi:10.1002/gepi.0042
See Also
stat.tpm
for the definition of the statistic.
Examples
## The 0.05 critical value of TPM statistic when n = 10:
q.tpm(p=.95, n=20, tau1 = 0.05)
M = matrix(0.3,20,20) + diag(1-0.3,20)
q.tpm(p=.95, n=20, tau1 = 0.05, M=M)
Construct soft-thresholding Fisher's p-value combination statistic.
Description
Construct soft-thresholding Fisher's p-value combination statistic.
Usage
stat.soft(p, tau1)
Arguments
p |
- input p-values. |
tau1 |
- truncation parameter=normalization parameter. tau1 > 0. |
Details
Let p_{i}
, i = 1,...,n
be a sequence of p-values, the soft-thresholding statistic
Soft = \sum_{i=1}^n -2\log(p_i/\tau_1)I(p_i\leq\tau_1)
. Soft-thresholding is the special case of TFisher when tau1=tau2.
Value
Soft-thresholding Fisher's p-value combination statistic.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
Examples
pval <- runif(100)
stat.soft(p=pval, tau1=0.05)
Construct omnibus soft-thresholding Fisher's p-value combination statistic.
Description
Construct omnibus soft-thresholding Fisher's p-value combination statistic.
Usage
stat.soft.omni(p, TAU1, M = NULL)
Arguments
p |
- input p-values. |
TAU1 |
- a vector of truncation parameters (=normalization parameters). Must be in non-descending order. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence. |
Details
Let x_{i}
, i = 1,...,n
be a sequence of individual statistics with
correlation matrix M, p_{i}
be the corresponding two-sided p-values, then the soft-thresholding statistics
Soft_j = \sum_{i=1}^n -2\log(p_i/\tau_{1j})I(p_i\leq\tau_{1j})
, j = 1,...,d
.
The omnibus test statistic is the minimum p-value of these soft-thresholding tests,
W_o = min_j G_j(Soft_j)
, where G_j
is the survival function of Soft_j
.
Value
omni - omnibus soft-thresholding statistic.
pval - p-values of each soft-thresholding tests.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
Examples
pval = runif(20)
TAU1 = c(0.01, 0.05, 0.5, 1)
stat.soft.omni(p=pval, TAU1=TAU1)
M = matrix(0.3,20,20) + diag(1-0.3,20)
stat.soft.omni(p=pval, TAU1=TAU1, M=M)
Construct thresholding Fisher's p-value combination statistic.
Description
Construct thresholding Fisher's p-value combination statistic.
Usage
stat.tfisher(p, tau1, tau2)
Arguments
p |
- input p-values. |
tau1 |
- truncation parameter. 0 < tau1 <= 1. |
tau2 |
- normalization parameter. tau2 >= tau1. |
Details
Let p_{i}
, i = 1,...,n
be a sequence of p-values, the thresholding Fisher's p-value combination statistic
TFisher = \sum_{i=1}^n -2\log(p_i/\tau_2)I(p_i\leq\tau_2)
Value
Thresholding Fisher's p-value combination statistic.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
Examples
pval <- runif(100)
stat.tfisher(p=pval, tau1=0.05, tau2=0.25)
Construct omnibus thresholding Fisher's (TFisher) p-value combination statistic.
Description
Construct omnibus thresholding Fisher's (TFisher) p-value combination statistic.
Usage
stat.tfisher.omni(p, TAU1, TAU2, M = NULL, MU = NULL, SIGMA2 = NULL,
P0 = NULL)
Arguments
p |
- input p-values from potentially correlated input sstatistics. |
TAU1 |
- a vector of truncation parameters. Must be in non-descending order. |
TAU2 |
- a vector of normalization parameters. Must be in non-descending order. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence |
MU |
- a vector of means of TFisher statistics. Default = NULL. |
SIGMA2 |
- a vector of variances of TFisher statistics. Default = NULL. |
P0 |
- a vector of point masses of TFisher statistics. Default = NULL. |
Details
Let x_{i}
, i = 1,...,n
be a sequence of individual statistics with
correlation matrix M, p_{i}
be the corresponding two-sided p-values, then the TFisher statistics
TFisher_j = \sum_{i=1}^n -2\log(p_i/\tau_{2j})I(p_i\leq\tau_{1j})
, j = 1,...,d
.
The omnibus test statistic is the minimum p-value of these thresholding tests,
W_o = min_j G_j(Soft_j)
, where G_j
is the survival function of Soft_j
.
Value
omni - omnibus TFisher statistic.
pval - p-values of each TFisher tests.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
Examples
pval = runif(20)
TAU1 = c(0.01, 0.05, 0.5, 1)
TAU2 = c(0.1, 0.2, 0.5, 1)
stat.tfisher.omni(p=pval, TAU1=TAU1, TAU2=TAU2)
M = matrix(0.3,20,20) + diag(1-0.3,20)
stat.tfisher.omni(p=pval, TAU1=TAU1, TAU2=TAU2, M=M)
Construct truncated product method statistic.
Description
Construct truncated product method statistic.
Usage
stat.tpm(p, tau1)
Arguments
p |
- input p-values. |
tau1 |
- truncation parameter. 0 < tau1 <= 1. |
Details
Let p_{i}
, i = 1,...,n
be a sequence of p-values, the TPM statistic
TPM = \sum_{i=1}^n -2\log(p_i)I(p_i\leq\tau_2)
. TPM is the special case of TFisher when tau2=1.
Value
Truncated product method statistic.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
2. Zaykin, D.V., Zhivotovsky, L. A., Westfall, P.H. and Weir, B.S. (2002), Truncated product method for combining P-values. Genet. Epidemiol., 22: 170–185. doi:10.1002/gepi.0042
Examples
pval <- runif(100)
stat.tpm(p=pval, tau1=0.05)
Construct omnibus truncated product method statistic.
Description
Construct omnibus truncated product method statistic.
Usage
stat.tpm.omni(p, TAU1, M = NULL)
Arguments
p |
- input p-values. |
TAU1 |
- a vector of truncation parameters. Must be in non-descending order. |
M |
- correlation matrix of the input statistics. Default = NULL assumes independence. |
Details
Let x_{i}
, i = 1,...,n
be a sequence of individual statistics with
correlation matrix M, p_{i}
be the corresponding two-sided p-values, then the truncated product method statistics
TPM_j = \sum_{i=1}^n -2\log(p_i)I(p_i\leq\tau_{1j})
, j = 1,...,d
.
The omnibus test statistic is the minimum p-value of these truncated product method tests,
W_o = min_j G_j(TPM_j)
, where G_j
is the survival function of TPM_j
.
Value
omni - omnibus truncated product method statistic.
pval - p-values of each truncated product method tests.
References
1. Hong Zhang and Zheyang Wu. "TFisher Tests: Optimal and Adaptive Thresholding for Combining p-Values", submitted.
Examples
pval = runif(20)
TAU1 = c(0.01, 0.05, 0.5, 1)
stat.tpm.omni(p=pval, TAU1=TAU1)
M = matrix(0.3,20,20) + diag(1-0.3,20)
stat.tpm.omni(p=pval, TAU1=TAU1, M=M)