日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

r语言怎么做经验分布_R语言如何做马尔科夫转换模型markov switching model

發(fā)布時間:2023/12/15 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 r语言怎么做经验分布_R语言如何做马尔科夫转换模型markov switching model 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

原文鏈接:

R語言如何做馬爾科夫轉(zhuǎn)換模型markov switching model?tecdat.cn

假設(shè) 有時間序列數(shù)據(jù),如下所示。經(jīng)驗表明,目標(biāo)變量y似乎與解釋變量x有關(guān)。然而,乍一看,y的水平在中間移動,所以它似乎并不總是有固定的關(guān)系(背后有多個狀態(tài))。

上面的樣本數(shù)據(jù)創(chuàng)建如下。數(shù)據(jù)根據(jù)時間改變x和y之間的關(guān)系。

x <- rpois(500, lambda = 10) y1 <- x * 4 + 20 y2 <- x * 2 + 60 noise <- rnorm(1:500, mean = 10, sd = 5) y1 <- y1 + noise y2 <- y2 + noise y <- c(y1[1:200], y2[201:400], y1[401:500]) observed <- data.frame(x = x, y = y)

x和y1,y2之間的關(guān)系如下圖所示。如果您知道x和y有兩種狀態(tài),則x和y看起來像這樣。

數(shù)據(jù)

? 在馬爾可夫轉(zhuǎn)換模型中,觀察數(shù)據(jù)被認(rèn)為是從幾個狀態(tài)生成的,并且如上所示很好地分離。

觀察到的數(shù)據(jù)

?

創(chuàng)建馬爾可夫轉(zhuǎn)換模型

模型公式

# Call: # lm(formula = y ~ x, data = observed) # # Residuals: # Min 1Q Median 3Q Max # -24.303 -9.354 -1.914 9.617 29.224 # # Coefficients: # Estimate Std. Error t value Pr(>|t|) # (Intercept) 45.7468 1.7202 26.59 <2e-16 *** # x 3.2262 0.1636 19.71 <2e-16 *** # --- # Signif. codes: # 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 # # Residual standard error: 11.51 on 498 degrees of freedom # Multiple R-squared: 0.4383, Adjusted R-squared: 0.4372 # F-statistic: 388.7 on 1 and 498 DF, p-value: < 2.2e-16

參數(shù)的含義是

  • k:馬爾可夫轉(zhuǎn)換模型的狀態(tài)數(shù)。在這里,它被指定為后面有兩個狀態(tài)。
  • sw:使用邏輯指定每個參數(shù)在狀態(tài)更改時是否更改
  • p:AR模型系數(shù)
  • family:(在GLM的情況下)概率分布族

# Markov Switching Model # # AIC BIC logLik # 3038.846 3101.397 -1513.423 # # Coefficients: # # Regime 1 # --------- # Estimate Std. Error t value Pr(>|t|) # (Intercept)(S) 69.3263 4.0606 17.0729 <2e-16 *** # x(S) 2.1795 0.1187 18.3614 <2e-16 *** # y_1(S) -0.0103 0.0429 -0.2401 0.8103 # --- # Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 # # Residual standard error: 4.99756 # Multiple R-squared: 0.6288 # # Standardized Residuals: # Min Q1 Med Q3 Max # -1.431396e+01 -2.056292e-02 -1.536781e-03 -1.098923e-05 1.584478e+01 # # Regime 2 # --------- # Estimate Std. Error t value Pr(>|t|) # (Intercept)(S) 30.2820 1.7687 17.1210 <2e-16 *** # x(S) 3.9964 0.0913 43.7722 <2e-16 *** # y_1(S) -0.0045 0.0203 -0.2217 0.8245 # --- # Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 # # Residual standard error: 4.836684 # Multiple R-squared: 0.8663 # # Standardized Residuals: # Min Q1 Med Q3 Max # -13.202056966 -0.771854514 0.002211602 1.162769110 12.417873232 # # Transition probabilities: # Regime 1 Regime 2 # Regime 1 0.994973376 0.003347279 # Regime 2 0.005026624 0.996652721

輸出中的制度1和制度2表示后面的兩個狀態(tài) 。

# Regime 1 # --------- # Estimate Std. Error t value Pr(>|t|) # (Intercept)(S) 69.3263 4.0606 17.0729 <2e-16 *** # x(S) 2.1795 0.1187 18.3614 <2e-16 *** # y_1(S) -0.0103 0.0429 -0.2401 0.8103

y1 <- x * 4 + 20 可以看到Regime 2 與之兼容。

可以說從調(diào)整后的R平方值整體上有所改善。

# Regime 2 # --------- # Estimate Std. Error t value Pr(>|t|) # (Intercept)(S) 30.2820 1.7687 17.1210 <2e-16 *** # x(S) 3.9964 0.0913 43.7722 <2e-16 *** # y_1(S) -0.0045 0.0203 -0.2217 0.8245

模型

對于每個regime,目標(biāo)變量+指定的解釋變量和處于該狀態(tài)的概率以陰影繪制

?

每個時間點的概率

?

每次獲取狀態(tài)和更改點

如果你想知道你在某個特定時間點所在的regime,那么就選擇那個時刻概率最高的 。

> probable [1] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 [30] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 ...

異常值/變化點是Regime更改的時間

c(FALSE, diff(probable) != 0) [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE [11] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE ... [181] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE [191] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE [201] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE ... [381] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE [391] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE [401] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE ... [491] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE

因此,我們可以看到檢測到在第一次數(shù)據(jù)創(chuàng)建時指定的變化點(201,401th)附近的點。

總結(jié)

以上是生活随笔為你收集整理的r语言怎么做经验分布_R语言如何做马尔科夫转换模型markov switching model的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。