ESAC_test_calibrate {HDCD} | R Documentation |
Generates empirical penalty function \gamma(t)
for single change-point testing using Monte Carlo simulation
Description
R wrapper for C function choosing the penalty function \gamma(t)
by Monte Carlo simulation, as described in Appendix B in Moen et al. (2023), for testing for a single change-point.
Usage
ESAC_test_calibrate(
n,
p,
bonferroni = TRUE,
N = 1000,
tol = 1/1000,
fast = FALSE,
rescale_variance = TRUE,
debug = FALSE
)
Arguments
n |
Number of observations |
p |
Number time series |
bonferroni |
If |
N |
Number of Monte Carlo samples used |
tol |
False positive probability tolerance |
fast |
If |
rescale_variance |
If |
debug |
If |
Value
A list containing a vector of values of \gamma(t)
for t \in \mathcal{T}
decreasing (element #1), a vector of corresponding values of the threshold a(t)
(element # 3), a vector of corresponding values of \nu_{a(t)}
A list containing
without_partial |
a vector of values of |
with_partial |
same as |
as |
vector of threshold values |
nu_as |
vector of conditional expectations |
References
Moen PAJ, Glad IK, Tveten M (2023). “Efficient sparsity adaptive changepoint estimation.” Arxiv preprint, 2306.04702, https://doi.org/10.48550/arXiv.2306.04702.
Examples
library(HDCD)
n = 50
p = 50
set.seed(100)
thresholds_emp = ESAC_test_calibrate(n,p, bonferroni=TRUE,N=100, tol=1/100)
set.seed(100)
thresholds_emp_without_bonferroni = ESAC_test_calibrate(n,p, bonferroni=FALSE,N=100, tol=1/100)
thresholds_emp[[1]] # vector of \gamma(t) for t = p,...,1
thresholds_emp_without_bonferroni[[1]] # vector of \gamma(t) for t = p,...,1
# Generating data
X = matrix(rnorm(n*p), ncol = n, nrow=p)
Y = matrix(rnorm(n*p), ncol = n, nrow=p)
# Adding a single sparse change-point to X (and not Y):
X[1:5, 26:n] = X[1:5, 26:n] +2
resX = ESAC_test(X, thresholds = thresholds_emp[[1]])
resX
resY = ESAC_test(Y, thresholds = thresholds_emp[[1]])
resY