非球面扰动引起的R结构变化自举检验统计量

非球面扰动引起的R结构变化自举检验统计量,r,testing,mean,difference,statistics-bootstrap,R,Testing,Mean,Difference,Statistics Bootstrap,我试图在一个倾斜、厚尾、异方差的时间序列的平均值中找到一个结构性的突变。我通过strucchange软件包应用Andrews(1993)supF测试。我的理解是,这是有效的,即使我的非球面干扰。但我想通过引导来确认这一点。我想从每个可能的断点(就像Andrews F-stat一样)的均值差异测试中估计最大t-stat,然后引导临界值。换句话说,我想在时间顺序数据中找到我的最大t-stat。然后对数据进行置乱,并在置乱数据中找到最大t-stat,10000次。然后将时间顺序数据中的最大t-stat

我试图在一个倾斜、厚尾、异方差的时间序列的平均值中找到一个结构性的突变。我通过strucchange软件包应用Andrews(1993)supF测试。我的理解是,这是有效的,即使我的非球面干扰。但我想通过引导来确认这一点。我想从每个可能的断点(就像Andrews F-stat一样)的均值差异测试中估计最大t-stat,然后引导临界值。换句话说,我想在时间顺序数据中找到我的最大t-stat。然后对数据进行置乱,并在置乱数据中找到最大t-stat,10000次。然后将时间顺序数据中的最大t-stat与无序数据中的秩9500最大t-stat给出的临界值进行比较。下面我生成示例数据并应用Andrews supF测试。有没有办法“纠正”安德鲁斯测试中的非球面干扰?有什么方法可以实现我正在尝试的引导吗

library(strucchange)
Thames <- ts(matrix(c(rlnorm(120, 0, 1), rlnorm(120, 2, 2), rlnorm(120, 4, 1)), ncol = 1), frequency = 12, start = c(1985, 1))
fs.thames <- Fstats(Thames ~ 1)
sctest(fs.thames)
库(strucchange)
泰晤士河(1)偏斜和重尾。与线性回归模型中的通常情况一样,推断的渐近合理性不依赖于正态性,并且在零期望、齐次方差和缺乏相关性(通常的高斯-马尔可夫假设)的情况下,也适用于任何其他误差分布。然而,如果您对感兴趣的数据有一个很好的拟合偏态分布,那么您可以通过基于相应模型的推理来提高效率。例如,
glogis
包提供了一些基于广义逻辑分布的结构变化测试和年代测定功能,该分布允许重尾和偏斜。Windberger&Zeileis(2014,东欧经济学,52,66–88)利用这一数据跟踪通货膨胀动态偏度随时间的变化。(请参见
?breakpoints.glogisfit
,了解一个工作示例。)此外,如果偏斜本身不是真正令人感兴趣的,那么日志或sqrt转换也可能足以使数据更“正常”

(2)异方差和自相关。与线性回归模型中的通常情况一样,在异方差和/或自相关存在的情况下,标准误差(或更广泛的协方差矩阵)不一致。可以尝试在模型(例如AR模型)中明确包含这一点,或者将其视为干扰项,并使用异方差和自相关一致(HAC)协方差矩阵(例如,Newey West或Andrews的二次谱核HAC)。
strucchange
中的函数
Fstats()
允许插入此类估计器,例如从
sandwich
软件包插入此类估计器。有关使用
vcovHC()
的示例,请参见
?durab

(3)引导和置换p值。您上面描述的时间序列的“置乱”听起来更像是应用置换(即不替换采样),而不是引导(即替换采样)。如果误差不相关或可交换,则前者是可行的。如果仅对常数进行回归,则可以使用
coin
包中的函数
maxstat\u test()
执行supF测试。测试统计数据的计算方式略有不同,但是,这可以证明在仅为常数的情况下等同于supF测试(见Zeileis&Hothorn,2013,统计论文,54931–954,)。如果您想在更一般的模型中执行置换测试,那么您必须“手动”进行置换,并简单地存储每个置换的测试统计信息。或者,可以应用引导,例如通过
boot
包(您仍然需要编写自己的小函数,从给定的引导样本计算测试统计数据)。也有一些R包(例如,
t系列
)为相关系列实施引导方案。

(1)偏斜和重尾。与线性回归模型中的常见情况一样,推理的渐近合理性不依赖于正态性,也适用于给定零期望、同方差和缺乏相关性(通常的高斯-马尔可夫假设)的任何其他误差分布。然而,如果您对感兴趣的数据有一个很好的拟合偏态分布,那么您可以通过基于相应模型的推理来提高效率。例如,
glogis
包提供了一些基于广义逻辑分布的结构变化测试和年代测定功能,该分布允许重尾和偏斜。Windberger&Zeileis(2014,东欧经济学,52,66–88)利用这一数据跟踪通货膨胀动态偏度随时间的变化。(请参见
?breakpoints.glogisfit
,了解一个工作示例。)此外,如果偏斜本身不是真正令人感兴趣的,那么日志或sqrt转换也可能足以使数据更“正常”

(2)异方差和自相关。与线性回归模型中的通常情况一样,在异方差和/或自相关存在的情况下,标准误差(或更广泛的协方差矩阵)不一致。可以尝试在模型(例如AR模型)中明确包含这一点,或者将其视为干扰项,并使用异方差和自相关一致(HAC)协方差矩阵(例如,Newey West或Andrews的二次谱核HAC)。
strucchange
中的函数
Fstats()
允许插入此类估计器,例如从
sandwich
软件包插入此类估计器。有关使用
vcovHC()
的示例,请参见
?durab

(3)引导和排列p值。您上面描述的时间序列的“置乱”听起来更像是应用
library("strucchange")
set.seed(12)
Thames <- ts(c(rlnorm(120, 0, 1), rlnorm(120, 2, 2), rlnorm(120, 4, 1)),
  frequency = 12, start = c(1985, 1))
fs_lev <- Fstats(Thames ~ 1, vcov = NeweyWest)
fs_log <- Fstats(log(Thames) ~ 1, vcov = NeweyWest)
bp_lev <- breakpoints(Thames ~ 1) 
bp_log <- breakpoints(log(Thames) ~ 1) 
confint(bp_lev, breaks = 2, vcov = NeweyWest)
## 
##          Confidence intervals for breakpoints
##          of optimal 3-segment partition: 
## 
## Call:
## confint.breakpointsfull(object = bp_lev, breaks = 2, vcov. = NeweyWest)
## 
## Breakpoints at observation number:
##   2.5 % breakpoints 97.5 %
## 1    NA         125     NA
## 2   202         242    263
confint(bp_log, breaks = 2, vcov = NeweyWest)
## 
##          Confidence intervals for breakpoints
##          of optimal 3-segment partition: 
## 
## Call:
## confint.breakpointsfull(object = bp_log, breaks = 2, vcov. = NeweyWest)
## 
## Breakpoints at observation number:
##   2.5 % breakpoints 97.5 %
## 1   107         119    121
## 2   238         240    250
## 
## Corresponding to breakdates:
##   2.5 %    breakpoints 97.5 %  
## 1 1993(11) 1994(11)    1995(1) 
## 2 2004(10) 2004(12)    2005(10)
par(mfrow = c(3, 2))
plot(Thames, main = "Thames")
lines(fitted(bp_lev, breaks = 2), col = 4, lwd = 2)
plot(log(Thames), main = "log(Thames)")
lines(fitted(bp_log, breaks = 2), col = 4, lwd = 2)
lines(confint(bp_log, breaks = 2, vcov = NeweyWest))
plot(fs_lev, main = "supF test")
plot(fs_log, main = "supF test")
plot(bp_lev)
plot(bp_log)