tsboot
位於 boot
包(package)。 說明
生成應用於時間序列的統計數據的 R
引導複製。複製時間序列可以使用固定或隨機塊長度生成,也可以是基於模型的複製。
用法
tsboot(tseries, statistic, R, l = NULL, sim = "model",
endcorr = TRUE, n.sim = NROW(tseries), orig.t = TRUE,
ran.gen, ran.args = NULL, norm = TRUE, ...,
parallel = c("no", "multicore", "snow"),
ncpus = getOption("boot.ncpus", 1L), cl = NULL)
參數
tseries |
單變量或多變量時間序列。 |
statistic |
應用於 |
R |
一個正整數,給出所需的引導重複次數。 |
sim |
生成複製時間序列所需的模擬類型。可能的輸入值是 |
l |
如果 |
endcorr |
指示當 |
n.sim |
模擬時間序列的長度。通常,這將等於原始時間序列的長度,但在某些情況下它會更大。一種明顯的情況是是否需要預測。 |
orig.t |
一個邏輯變量,指示 |
ran.gen |
這是三個參數的函數。第一個參數是時間序列。如果 |
ran.args |
每次調用時都會將其提供給 |
norm |
一個邏輯參數,指示是否應使用正常裕度進行相位擾亂。如果 |
... |
此處可以提供 |
parallel , ncpus , cl |
請參閱 |
細節
如果 sim
是 "fixed"
,則通過從原始時間序列中取出長度為 l
的塊並將它們端到端放置,直到創建長度為 n.sim
的新序列,找到每個複製時間序列。當 sim
為 "geom"
時,采用類似的方法,隻不過現在塊長度是根據平均值為 l
的幾何分布生成的。通過在 tsboot
調用中包含函數 ran.gen
並將 tseries
作為殘差時間序列,可以對這些複製時間序列執行 Post-blackening。
基於模型的重采樣與參數引導非常相似,所有模擬都必須在用戶指定的函數之一中進行。這避免了選擇塊長度的複雜問題,但依賴於做出的準確模型選擇。
Davison 和 Hinkley (1997) 的第 8.2.4 節說明了相位擾亂。此方法產生合理結果的統計類型非常有限,而其他方法在大多數情況下似乎做得更好。頻域中的其他類型的重采樣可以使用帶有參數 sim = "parametric"
的函數 boot
來完成。
值
類 "boot"
的對象,具有以下組件。
t0 |
如果 |
t |
將 |
R |
提供給 |
tseries |
原始時間序列。 |
statistic |
提供的函數 |
sim |
用於生成重複的模擬類型。 |
endcorr |
使用的 |
n.sim |
使用的 |
l |
|
ran.gen |
|
ran.args |
傳遞給 |
call |
對 |
例子
lynx.fun <- function(tsb) {
ar.fit <- ar(tsb, order.max = 25)
c(ar.fit$order, mean(tsb), tsb)
}
# the stationary bootstrap with mean block length 20
lynx.1 <- tsboot(log(lynx), lynx.fun, R = 99, l = 20, sim = "geom")
# the fixed block bootstrap with length 20
lynx.2 <- tsboot(log(lynx), lynx.fun, R = 99, l = 20, sim = "fixed")
# Now for model based resampling we need the original model
# Note that for all of the bootstraps which use the residuals as their
# data, we set orig.t to FALSE since the function applied to the residual
# time series will be meaningless.
lynx.ar <- ar(log(lynx))
lynx.model <- list(order = c(lynx.ar$order, 0, 0), ar = lynx.ar$ar)
lynx.res <- lynx.ar$resid[!is.na(lynx.ar$resid)]
lynx.res <- lynx.res - mean(lynx.res)
lynx.sim <- function(res,n.sim, ran.args) {
# random generation of replicate series using arima.sim
rg1 <- function(n, res) sample(res, n, replace = TRUE)
ts.orig <- ran.args$ts
ts.mod <- ran.args$model
mean(ts.orig)+ts(arima.sim(model = ts.mod, n = n.sim,
rand.gen = rg1, res = as.vector(res)))
}
lynx.3 <- tsboot(lynx.res, lynx.fun, R = 99, sim = "model", n.sim = 114,
orig.t = FALSE, ran.gen = lynx.sim,
ran.args = list(ts = log(lynx), model = lynx.model))
# For "post-blackening" we need to define another function
lynx.black <- function(res, n.sim, ran.args) {
ts.orig <- ran.args$ts
ts.mod <- ran.args$model
mean(ts.orig) + ts(arima.sim(model = ts.mod,n = n.sim,innov = res))
}
# Now we can run apply the two types of block resampling again but this
# time applying post-blackening.
lynx.1b <- tsboot(lynx.res, lynx.fun, R = 99, l = 20, sim = "fixed",
n.sim = 114, orig.t = FALSE, ran.gen = lynx.black,
ran.args = list(ts = log(lynx), model = lynx.model))
lynx.2b <- tsboot(lynx.res, lynx.fun, R = 99, l = 20, sim = "geom",
n.sim = 114, orig.t = FALSE, ran.gen = lynx.black,
ran.args = list(ts = log(lynx), model = lynx.model))
# To compare the observed order of the bootstrap replicates we
# proceed as follows.
table(lynx.1$t[, 1])
table(lynx.1b$t[, 1])
table(lynx.2$t[, 1])
table(lynx.2b$t[, 1])
table(lynx.3$t[, 1])
# Notice that the post-blackened and model-based bootstraps preserve
# the true order of the model (11) in many more cases than the others.
參考
Davison, A.C. and Hinkley, D.V. (1997) Bootstrap Methods and Their Application. Cambridge University Press.
Kunsch, H.R. (1989) The jackknife and the bootstrap for general stationary observations. Annals of Statistics, 17, 1217-1241.
Politis, D.N. and Romano, J.P. (1994) The stationary bootstrap. Journal of the American Statistical Association, 89, 1303-1313.
也可以看看
相關用法
- R tau Tau 粒子衰變模式
- R tilt.boot 非參數傾斜引導
- R tuna 金槍魚目擊數據
- R poisons 動物生存時間
- R ducks 雜交鴨的行為和羽毛特征
- R nodal 前列腺癌的淋巴結受累
- R cloth 布料瑕疵數量
- R polar 新喀裏多尼亞紅土的極點位置
- R capability 模擬製造過程數據
- R beaver 海狸體溫數據
- R saddle.distn Bootstrap 統計的鞍點分布近似
- R logit 比例的邏輯
- R EEF.profile 經驗可能性
- R gravity 重力加速度
- R boot 引導重采樣
- R plot.boot Bootstrap 模擬的輸出圖
- R boot.ci 非參數引導置信區間
- R envelope 曲線的置信區間
- R bigcity 美國城市人口
- R co.transfer 一氧化碳轉移
- R imp.weights 重要性采樣權重
- R acme 每月超額返回
- R glm.diag.plots 廣義線性模型的診斷圖
- R survival 輻射劑量後大鼠的存活率
- R norm.ci 正態近似置信區間
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Bootstrapping of Time Series。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。