test.once.flat.robust {OLCPM} | R Documentation |
robust test of single change point for matrix-valued online time series -"flat" version
Description
Based on test.once.flat
, this function
repeats the randomized procedure multiple times and reports the majority
vote, thus more robust.
Usage
test.once.flat.robust(
Y,
k = 1,
m = ceiling(max(20, (dim(Y)[3])^(r/(r + 2)))),
epsilon = 0.05,
r = 8,
decrease = 0,
method = "ps",
eta = 0.25,
cv = 2.386,
S = 100,
pr = 0.75
)
Arguments
Y |
data, a |
k |
a positive integer indicating which eigenvalue to monitor.
|
m |
a positive integer ( |
epsilon |
the rescaling parameter taking value in |
r |
a positive integer indicating the order of the transformation
function |
decrease |
a logical value. If decrease=1, testing the decrease of factor number. |
method |
indicating the test statistic, “ps” for the partial-sum method; others for the worst-case method. |
eta |
a number between |
cv |
critical value; see also |
S |
an integer indicating the number of replications. |
pr |
an number in |
Details
See He et al. (2021).
Value
a list containing:
test |
a logical value. 1 indicating the existence of change point, 0 indicating no change point. |
loc |
an integer larger than m, indicating
the median location of the change point among the positive votes in the
S replications; or |
Author(s)
Yong He, Xinbing Kong, Lorenzo Trapani, Long Yu
References
He Y, Kong X, Trapani L, & Yu L(2021). Online change-point detection for matrix-valued time series with latent two-way factor structure. arXiv preprint, arXiv:2112.13479.
Examples
## Not run:
k1=3
k2=3
epsilon=0.05
Sample_T=50
p1=40
p2=20
kmax=8
r=8
m=p2
# generate data
Y=gen.data(Sample_T,p1,p2,k1,k2,tau=0.5,change=1,pp=0.5)
# calculate cv for "ps" with eta=0.45 and "wc"
cv1=getcv(0.05,method="ps",eta=0.45)
cv2=getcv(0.05,method="wc")
## test with Y, flat version
test.once.flat.robust(Y,k1+1,m,epsilon,r,0,method="ps",eta=0.25)
test.once.flat.robust(Y,k1+1,m,epsilon,r,0,method="ps",eta=0.45,cv1)
test.once.flat.robust(Y,k1+1,m,epsilon,r,0,method="wc",eta=0.5,cv2)
## End(Not run)