拓端tecdat|R语言阈值模型代码示例

全文链接http://tecdat.cn/?p=4276

原文出处:拓端数据部落公众号

阈值模型用于统计的几个不同区域,而不仅仅是时间序列。一般的想法是,当变量的值超过某个阈值时,过程可能表现不同。也就是说,当值大于阈值时,可以应用不同的模型,而不是当它们低于阈值时。例如,在药物毒理学应用中,可能低于阈值量的所有剂量都是安全的,而当剂量增加到阈值量以上时毒性增加。或者,在动物种群丰度研究中,种群可以缓慢增加至阈值大小,但是一旦种群超过一定大小,则可能迅速减少(由于有限的食物)。

阈值模型是制度转换模型(RSM)的特例。在RSM建模中,不同的模型适用于某些关键变量的不同值间隔。

单变量时间序列的阈值自回归模型(TAR)。在TAR模型中,AR模型在由因变量定义的两个或更多个值间隔中单独估计。这些AR模型可能是也可能不是相同的顺序。为方便起见,通常假设它们具有相同的顺序。

该文本仅考虑单个阈值,因此将存在两个单独的AR模型 - 一个用于超过阈值的值,另一个用于不超过阈值的值。困难在于确定是否需要TAR模型,使用的阈值以及AR模型的顺序。TAR模型可以工作的数据的一个特征是当值高于某个水平时,增加和/或减少的速率可能不同于当值低于该水平时。

阈值水平的估计或多或少是主观的。许多分析师探索了几种不同的阈值水平,试图提供良好的数据拟合(通过MSE值和残差的一般特征来衡量)。AR模型的顺序也可以是试错法,特别是当数据的固有模型可能不是AR时。一般来说,分析师从他们认为可能比必要的更高的订单开始,然后在必要时减少订单。

第一步绘制数据。以下是数据的时间序列图。

图形

注意陡峭增加(和减少)的时期。作者还注意到略有下降趋势,因此首先考察了差异。以下是第一个差异的时间序列图。

图形

与原始数据一致,我们看到某些时期的急剧增加和减少。经过一些实验,作者决定对两个区域使用单独的AR(4)模型:第一个差异大于或等于0.05的数据和第一个差异小于0.05的数据。该模型非常适合,作为以下图表的证据 - 残差的ACF和PACF以及将实际的第一差异与预测的第一差异进行比较的图表。在比较实际值和预测值的图中,预测值沿着红色虚线。

图形

图形

R代码示例

该示例的R代码如下。在ts.intersect  命令中,lag(,)命令创建滞后,输出的矩阵不包含缺少值的行。在代码中,我们对所有数据进行AR(4)模型的回归拟合,以便设置将在单独的制度回归中使用的变量。另请注意,阈值在命令c = .05中定义  代码将执行两个回归,确定残差及其acf / pacf,并创建实际值和预测值的图。

 
 

model = ts.intersect(y,lag1y = lag(y,-1),lag2y = lag(y,-2),lag3y = lag(y,-3),lag4y = lag(y,-4))
x = model [ ,1] 



 

 
##低于阈值的值的回归
less =(P [,1] <c)
 
out1 = lm(x1~P1 [,1] + P1 [,2] + P1 [,3] + P1 [,4])
 
##回归值高于阈值
 
out2 = lm(x2~P2 [,1] + P2 [,2] + P2 [,3] + P2 [,4])
 
## Residuals
 
less [less == 1] = res1 
 
more acf2(resid)
 
##预测值
less =(P [,1 ] <c)
greater =(P [,1]> = c)
 
less [less == 1] = fit1 
greater [greater == 1] = fit2 

  

    flu.tar4.05 = setar(dflu,m = 4,thDelay = 0,th = .05)




通过拟合和诊断图显示上方和下方的最终模型.05     plot(flu.tar4.05)#cycles

如果我们没有为th选项提供阈值,则setar搜索网格以选择阈值(.036):

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...