Re: [程式] R package output處理問題 [tseries]
※ 引述《blackalert (右上角星位)》之銘言:
: ※ 引述《TrebleA (我也想要有年終)》之銘言:
: : [軟體程式類別]:
: : R
: : [程式問題]:
: : TimeSeries, captre.output, 整理
: : [軟體熟悉度]:
: : 低(不到1個月)
: : [問題敘述]:
: : [程式範例]:
: : -----------------------------------------------------------------------------
: : 掙扎了很久還是想要麻煩大家一下,因為想到天亮了還是想
: : 不出有沒有燒時間以外的方法....
: : 以下說明我的問題:
: : INDEX 是一個384*34的矩陣
: : 我希望對每一行做DF單根檢定(所以要做34次)
: : 其中需要的package如下
: : library(tseries)
: : 在苦苦追求解答的路上,終於讓我知道迴圈怎麼寫了(好笨><)
: : adf.test(INDEX[,i],k=0) #DF TEST
: : ##DF TEST
: : for(i in 1:34){
: : cat("i=",i)
: : print(adf.test(INDEX[,i],k=0))
: : }
: : 很開心的把結果跑出來後遇到了一個難題
: : 以第一行為例的話 用這個套件跑出來的結果是
: : Augmented Dickey-Fuller Test
: : data: INDEX[, 1]
: : Dickey-Fuller = -2.0861, Lag order = 7, p-value = 0.5408
: : alternative hypothesis: stationary
: : 也就是如果把迴圈執行完是用上面的結果堆疊34次
: : 但是我希望把他整理成以下的表
: : i=1 DF statistic p-value lag order
: : i=2 DF statistic p-value lag order
: : .
: : .
: : .
: : i=34 DF statistic p-value lag order
: : 想說用capture.output來做雖然可以抓取所有的結果,但是資
: : 料內容也由便於分析的數值變成character了,這樣在之後的分析上似乎會很不便?
: : (因為之後想要找出比較不顯著的值)
: : 爬了一下文發現大家都是自己寫的函數形式來做處理,
: : 還沒有看到如果針對別人寫的package的結果做處理的。
: : 不知道針對package的問題有沒有人有類似的問題跟想法呢?
: : 謝謝大家耐心看完這篇
: 先定義一個34*4矩陣來放你要的結果,例如 M = matrix(,34,4)
: 然後在你的迴圈裡面,假設令 r = adf.test(INDEX[,i],k=0)
: s = r$statistic 可以抓出D-F統計量
: l = r$parameter 可以抓出 lag order
: p = r$p.value 可以抓出 p-value
: ## 可以試試 names(r) ##
: 最後把它們放到預先定義的M矩陣中的相對位置 M[i,] = c(i,s,l,p) 就好了~
: 我其實不太懂時間數列,
: 如果有什麼錯誤還請指教~
感謝blackalert大的指導
嘗試後成功得到我想要的矩陣形式的資料表示
程式碼 及結果架構如下
M <-matrix(,34,4)
##DF TEST
for(i in 1:34){
cat("i=",i)
r <- adf.test(INDEX[,i],k=0)
s <- r$statistic
l <- r$parameter
p <- r$p.value
M[i,] <- c(i,s,p,l)
}
結果
M :
V1 V2 V3 V4
1 1 DF-statistic p-value lags
2 2 DF-statistic p-value lags
...
34 34 DF-statistic p-value lags
只是我現在有點好奇M矩陣中的c(V1,V2,V3,V4)要怎麼命名?
異想天開的亂使用這個code
> c("i","DF statistic","p-value","lag") <- names(c(M[,1],M[,2],M[,3],M[,4]))
出現了錯誤的訊息如下:
錯誤在c("i", "DF statistic", "p-value", "lag") <- names(c(M[, 1], M[, :
賦值目標擴充到非語言的物件
看來是無法使用在矩陣之後的數陣命名上面XD
謝謝,希望能不吝指教
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 36.224.85.12
推
01/30 17:10, , 1F
01/30 17:10, 1F
→
01/30 17:11, , 2F
01/30 17:11, 2F
→
01/30 17:11, , 3F
01/30 17:11, 3F
→
01/30 22:28, , 4F
01/30 22:28, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):