changePoint {ChangepointTesting} | R Documentation |
Change Point Estimation for Clustered Signals
Description
A multiple testing procedure for clustered alternative hypotheses. It is assumed that the p-values under the null hypotheses follow U(0,1) and that the distributions of p-values from the alternative hypotheses are stochastically smaller than U(0,1). By aggregating information, this method is more sensitive to detecting signals of low magnitude than standard methods. Additionally, sporadic small p-values appearing within a null hypotheses sequence are avoided by averaging on the neighboring p-values.
Usage
changePoint(pvalues, alpha, km, lm, compare = "BOTH", fdrlWindow = 3,
fdrlNStep = 300, fdrlLambda = 0.1)
Arguments
pvalues |
an object of class numeric. A vector of p-values. |
alpha |
an object of class numeric. The significant level for the estimation of the critical value, gamma*. |
km |
an object of class numeric. The size of the window defining the neighborhood in left and right distances. |
lm |
an object of class numeric. The size of the window defining the neighborhood in the long-run variance estimation. |
compare |
one of ("FDRL", "BH", "Both", "None"). In addition to the Cao-Wu method, obtain significance indicators using the FDR_L method (FDRL) (Zhang et al., 2011), the Benjamini-Hochberg method (BH), (Benjamini andHochberg, 1995), "both" the FDRL and the BH methods, or do not consider alternative methods (none). |
fdrlWindow |
an object of class numeric. If FDR_L method requested, the size of the window defining the neighborhood. |
fdrlNStep |
an object of class numeric. If FDR_L method requested, the number of threshold values to consider. |
fdrlLambda |
and object of class numeric. If FDR_L method requested, the tuning constant. |
Details
The comparison capability is included only for convenience and reproducibility of the original manuscript. The Benjamini-Hochberg and FDR_L methods cannot be accessed outside of the changePoint function.
The following methods retrieve individual results from a changePoint object, x:
BH(x)
:
Retrieves a vector of integer values.
An element is 1 if the null hypothesis is rejected
by the Benjamini-Hochberg (1995) method.
blocks(x)
:
Retrieves a list, each element of which is
a vector of integer values.
Each vector contains the indices of
an alternative hypothesis block.
CW(x)
:
Retrieves a vector of integer values.
An element is 1 if the null hypothesis is rejected
by the Cao-Wu change point (2015) method.
changePts(x)
:
Retrieves a vector of integer values.
The vector of change points identified by the
Cao-Wu (2015) method. If no change points are
identified, NULL is returned.
FDRL(x)
:
Retrieves a vector of integer values.
Elements are 1 if the null hypothesis is rejected
by the FDR_L (Zhang et al. 2011) method.
critical(x)
: Retrieves the
estimated critical value for testing used by
the Cao-Wu (2015) method.
numAlt(x)
: Retrieves the
estimated number of alternative hypotheses
obtained by the Cao-Wu (2015) method.
piAlt(x)
: Retrieves the
estimated proportion of alternative hypotheses
obtained by the Cao-Wu (2015) method.
plot(x, y, logp, ...)
: Generates plots
of -log(p) vs position or p-value vs position for
each alternative hypothesis block obtained
by the Cao-Wu (2015) method. logp is TRUE/FALSE
indicating if -log(p)/p-values are plotted on the y-axis.
sigmaSq(x)
: Retrieves the
estimated variance used to determine the critical value of
the Cao-Wu (2015) method.
Value
Returns an object of class changePoint
.
Author(s)
Hongyuan Cao, Wei Biao Wu, and Shannon T. Holloway Maintainer: Shannon T. Holloway <shannon.t.holloway@gmail.com>
References
Benjamini, Y. and Hochberg, Y. (1995). Controlling the false discovery rate: A practical and powerful approach to multiple testing. Journal of the Royal Statistical Society: Series B, 57, 289–300.
Cao, H. and Wu, W. B. (2015) Changepoint estimation: Another look at multiple testing problems. Biometrika, 102, 974–980.
Zhang, C., Fan, J., and Yu, T. (2011). Multiple testing via FDRL for large-scale imaging data. Anals of Statistics, 39, 613–642.
Examples
m <- 5000
T <- c(rep(0.1, 75), rep( 0.8, 75), rep(1.8, 100),
rep(0.0,2250), rep(-1.5,250), rep(0.0,2250)) +
rnorm(m, mean=0.0, sd = 1.0)
pv <- 2.0*(1.0-pnorm(abs(T)))
res <- changePoint(pvalues = pv,
alpha = 0.05,
km = {log(m)}^2,
lm = m^{1/4},
compare = "Both")
print(changePts(res))
print(head(cbind(BH(res),FDRL(res),CW(res))))