Description Details Slots References Examples
QuantilePG
is an S4 class that implements the necessary
calculations to determine one of the periodogram-like statistics defined in
Dette et. al (2015) and Kley et. al (2016).
Performs all the calculations to determine a quantile periodogram from a
FreqRep
object upon initizalization (and on request
stores the values for faster access).
The two methods available for the estimation are the ones implemented as
subclasses of FreqRep
:
the Fourier transformation of the clipped time series
(I{Y_t <= q}) [cf. ClippedFT
], or
the weighted L1-projection of (Y_t) onto an harmonic
basis [cf. QRegEstimator
].
All remarks made in the documentation of the super-class
QSpecQuantity
apply.
freqRep
a FreqRep
object where the quantile periodogram will
be based on.
Dette, H., Hallin, M., Kley, T. & Volgushev, S. (2015). Of Copulas, Quantiles, Ranks and Spectra: an L1-approach to spectral analysis. Bernoulli, 21(2), 781–831. [cf. http://arxiv.org/abs/1111.7205]
Kley, T., Volgushev, S., Dette, H. & Hallin, M. (2016). Quantile Spectral Processes: Asymptotic Analysis and Inference. Bernoulli, 22(3), 1770–1807. [cf. http://arxiv.org/abs/1401.8104]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | ################################################################################
## This script illustrates how to work with QuantilePG objects
## Simulate a time series Y1,...,Y128 from the QAR(1) process discussed in
## Dette et. al (2015).
Y <- ts1(64)
## For a defined set of quantile levels
levels <- c(0.25,0.5,0.75)
## the various quantile periodograms can be calculated calling quantilePG:
## For a copula periodogram as in Dette et. al (2015) the option 'type="qr"'
## has to be used:
system.time(
qPG.qr <- quantilePG(Y, levels.1 = levels, type="qr"))
## For the CR-periodogram as in Kley et. al (2016) the option 'type="clipped"'
## has to be used. If bootstrap estimates are to be used the parameters
## type.boot, B and l need to be specified.
system.time(
qPG.cl <- quantilePG(Y, levels.1 = levels, type="clipped",
type.boot="mbb", B=250, l=2^5))
## The two previous calls also illustrate that computation of the CR-periodogram
## is much more efficient than the quantile-regression based copula periodogram.
## Either periodogram can be plotted using the plot command
plot(qPG.cl)
plot(qPG.qr)
## Because the indicators are not centered it is often desired to exclude the
## frequency 0; further more the frequencies (pi,2pi) are not wanted to be
## included in the plot, because f(w) = Conj(f(2 pi - w)).
## Using the plot command it is possible to select frequencies and levels for
## the diagram:
plot(qPG.cl, frequencies=2*pi*(1:32)/64, levels=c(0.25))
## We can also plot the same plot together with a (simulated) quantile spectral
## density kernel
csd <- quantileSD(N=2^8, seed.init = 2581, type = "copula",
ts = ts1, levels.1=c(0.25), R = 100)
plot(qPG.cl, qsd = csd, frequencies=2*pi*(1:32)/64, levels=c(0.25))
## Calling the getValues method allows for comparing the two quantile
## periodograms; here in a diagram:
freq <- 2*pi*(1:31)/32
V.cl <- getValues(qPG.cl, frequencies = freq, levels.1=c(0.25))
V.qr <- getValues(qPG.qr, frequencies = freq, levels.1=c(0.25))
plot(x = freq/(2*pi), Re(V.cl[,1,1,1]), type="l",
ylab="real part -- quantile PGs", xlab=expression(omega/2*pi))
lines(x = freq/(2*pi), Re(V.qr[,1,1,1]), col="red")
## Now plot the imaginary parts of the quantile spectra for tau1 = 0.25
## and tau2 = 0.5
freq <- 2*pi*(1:31)/32
V.cl <- getValues(qPG.cl, frequencies = freq, levels.1=c(0.25, 0.5))
V.qr <- getValues(qPG.qr, frequencies = freq, levels.1=c(0.25, 0.5))
plot(x = freq/(2*pi), Im(V.cl[,1,2,1]), type="l",
ylab="imaginary part -- quantile PGs", xlab=expression(omega/2*pi))
lines(x = freq/(2*pi), Im(V.qr[,1,2,1]), col="red")
|
Loading required package: stats4
user system elapsed
0.299 0.025 0.335
user system elapsed
0.085 0.008 0.093
1 % done; 0.000287056 secs elapsed
2 % done; 0.07284427 secs elapsed
3 % done; 0.08637977 secs elapsed
4 % done; 0.09764433 secs elapsed
5 % done; 0.1117833 secs elapsed
6 % done; 0.1247575 secs elapsed
7 % done; 0.1343992 secs elapsed
8 % done; 0.1467774 secs elapsed
9 % done; 0.1602974 secs elapsed
10 % done; 0.1734984 secs elapsed
11 % done; 0.1846137 secs elapsed
12 % done; 0.2021565 secs elapsed
13 % done; 0.2149155 secs elapsed
14 % done; 0.2247813 secs elapsed
15 % done; 0.2375069 secs elapsed
16 % done; 0.2501609 secs elapsed
17 % done; 0.2602308 secs elapsed
18 % done; 0.2736814 secs elapsed
19 % done; 0.4394698 secs elapsed
20 % done; 0.4541473 secs elapsed
21 % done; 0.4654257 secs elapsed
22 % done; 0.4767501 secs elapsed
23 % done; 0.4921181 secs elapsed
24 % done; 0.5040438 secs elapsed
25 % done; 0.5151792 secs elapsed
26 % done; 0.5267127 secs elapsed
27 % done; 0.5424495 secs elapsed
28 % done; 0.5537803 secs elapsed
29 % done; 0.5656028 secs elapsed
30 % done; 0.5760145 secs elapsed
31 % done; 0.5922103 secs elapsed
32 % done; 0.6035752 secs elapsed
33 % done; 0.6138802 secs elapsed
34 % done; 0.6244762 secs elapsed
35 % done; 0.6379046 secs elapsed
36 % done; 0.6490819 secs elapsed
37 % done; 0.6622815 secs elapsed
38 % done; 0.6742969 secs elapsed
39 % done; 0.6896968 secs elapsed
40 % done; 0.7004108 secs elapsed
41 % done; 0.7111778 secs elapsed
42 % done; 0.7229307 secs elapsed
43 % done; 0.7392163 secs elapsed
44 % done; 0.7505434 secs elapsed
45 % done; 0.7618635 secs elapsed
46 % done; 0.7756886 secs elapsed
47 % done; 0.7863572 secs elapsed
48 % done; 0.7971034 secs elapsed
49 % done; 0.8078935 secs elapsed
50 % done; 0.821187 secs elapsed
51 % done; 0.8316038 secs elapsed
52 % done; 0.8422863 secs elapsed
53 % done; 0.8526971 secs elapsed
54 % done; 0.8670413 secs elapsed
55 % done; 0.8793564 secs elapsed
56 % done; 0.893904 secs elapsed
57 % done; 0.909266 secs elapsed
58 % done; 0.9235072 secs elapsed
59 % done; 0.93418 secs elapsed
60 % done; 0.9448245 secs elapsed
61 % done; 0.9558446 secs elapsed
62 % done; 0.9700274 secs elapsed
63 % done; 0.98051 secs elapsed
64 % done; 0.9908321 secs elapsed
65 % done; 1.001415 secs elapsed
66 % done; 1.015795 secs elapsed
67 % done; 1.026424 secs elapsed
68 % done; 1.03879 secs elapsed
69 % done; 1.058498 secs elapsed
70 % done; 1.074005 secs elapsed
71 % done; 1.086516 secs elapsed
72 % done; 1.096545 secs elapsed
73 % done; 1.106895 secs elapsed
74 % done; 1.120481 secs elapsed
75 % done; 1.130785 secs elapsed
76 % done; 1.140889 secs elapsed
77 % done; 1.154917 secs elapsed
78 % done; 1.165399 secs elapsed
79 % done; 1.175795 secs elapsed
80 % done; 1.187266 secs elapsed
81 % done; 1.202552 secs elapsed
82 % done; 1.214481 secs elapsed
83 % done; 1.225976 secs elapsed
84 % done; 1.236594 secs elapsed
85 % done; 1.250331 secs elapsed
86 % done; 1.261716 secs elapsed
87 % done; 1.272857 secs elapsed
88 % done; 1.283841 secs elapsed
89 % done; 1.298869 secs elapsed
90 % done; 1.315194 secs elapsed
91 % done; 1.325501 secs elapsed
92 % done; 1.335987 secs elapsed
93 % done; 1.349933 secs elapsed
94 % done; 1.360497 secs elapsed
95 % done; 1.37137 secs elapsed
96 % done; 1.381755 secs elapsed
97 % done; 1.396764 secs elapsed
98 % done; 1.407178 secs elapsed
99 % done; 1.417977 secs elapsed
100 % done; 1.43217 secs elapsed
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.