Re: [問題] 經驗解構法EMD在R語言的使用

看板R_Language作者 (拒看低質媒體)時間10年前 (2015/08/24 01:21), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
我只能講解一下我知道的部份 ※ 引述《tonylingugu (tonylingugu)》之銘言: : 文章分類提示: : - 問題: 關於經驗解構法Empirical Mode Decomposition在R language的使用 : : [問題類型]: : : 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) : : [軟體熟悉度]:初學者,主要是完成老闆要求的事情,上網找尋solutions : : 新手(沒寫過程式,R 是我的第一次) : [問題敘述]: : 我要將一串時間序列依經驗解構法拆解不同的components,我在網路上有找到 : 使用套件EMD的示範,但是我看不懂也不法模仿,所以想詢問是否有人做過類似的事情, : 或是提供可用之參考資料。 : [程式範例]: : : ####這是我在網路上找到的示範 : ndata <- 3000 : par(mfrow=c(1,1), mar=c(1,1,1,1))####但是這邊我不懂par()這個部分是在做什麼 這是調整繪圖輸出的參數 : tt2 <- seq(0, 9, length=ndata) : xt2 <- sin(pi * tt2) + sin(2* pi * tt2) + +sin(6*pi*tt2) +0.5*tt2 : plot(tt2, xt2, xlab="", ylab="", type="l", axes=FALSE); box() : tryimf <- extractimf(xt2, tt2, check=TRUE, boundary = "periodic") : par(mfrow=c(3,1), mar=c(2,1,2,1)) : try <- emd(xt2, tt2, boundary="wave")par(mfrow=c(3,1), mar=c(2,1,2,1)) : ####這邊我看得出來他是使用xt2與tt2來做EMD,但是如果我只有一串數列 : ####maybe就是S&P500index,我就不知道怎麼弄了。 : ####因為我不知道xt2與tt2分別是什麼? 我不懂EMD,所以這裡就PASS了 : par(mfrow=c(try$nimf+1, 1), mar=c(2,1,2,1)) : rangeimf <- range(try$imf) : for(i in 1:try$nimf) : plot(xt3, try$imf[,i], type="l", xlab="", : ylab="", ylim=rangeimf, main= : paste(i, "-th IMF", sep="")) : abline(h=0) : plot(xt3, try$residue, xlab="", ylab="", main="residue", type="l") : ####這邊我直接複製在R裡面他有顯現出EMD該有的樣子,但是我不知道range()這個部分 : ####在做什麼?他後面又一個loop把IMF都找出來,但還是有幾個function我看不懂, : ####abline()跟paste()都不知道他在做什麼。 : range會算出最小值和最大值,這裡用range是為了調整畫圖的範圍,應該和EMD無關 abline是劃線的 paste是兜字串的 這些也都只是和畫出來的圖有關而已 : [環境敘述]: : : > sessionInfo() : R version 3.2.1 (2015-06-18) : Platform: x86_64-apple-darwin13.4.0 (64-bit) : Running under: OS X 10.10.4 (Yosemite) : locale: : [1] zh_TW.UTF-8/zh_TW.UTF-8/zh_TW.UTF-8/C/zh_TW.UTF-8/zh_TW.UTF-8 : attached base packages: : [1] grid parallel stats graphics grDevices utils datasets methods base : other attached packages: : [1] hht_2.1.2 Quandl_2.6.1 quantmod_0.4-4 TTR_0.23-0 xts_0.9-7 zoo_1.7-12 : [7] EMD_1.5.7 locfit_1.5-9.1 fields_8.2-1 maps_2.3-11 spam_1.0-1 rugarch_1.3-4 : loaded via a namespace (and not attached): : [1] Rcpp_0.11.6 rstudioapi_0.3.1 magrittr_1.5 : [4] misc3d_0.8-4 lattice_0.20-31 R6_2.1.0 : [7] Rsolnp_1.15 stringr_1.0.0 httr_1.0.0 : [10] tools_3.2.1 SkewHyperbolic_0.3-2 GeneralizedHyperbolic_0.8-1 : [13] spd_2.0-1 KernSmooth_2.23-14 rgl_0.95.1201 : [16] numDeriv_2014.2-1 Matrix_1.2-1 nloptr_1.0.4 : [19] DistributionUtils_0.5-1 ks_1.9.4 curl_0.9.1 : [22] stringi_0.5-5 jsonlite_0.9.16 expm_0.99-1.1 : [25] truncnorm_1.0-7 mvtnorm_1.0-2 : [關鍵字]: : : 謝謝各位!我研究這個研究好久了,還是做不出來。 : -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.161.39.229 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1440350507.A.3B7.html
文章代碼(AID): #1LsW4hEt (R_Language)
文章代碼(AID): #1LsW4hEt (R_Language)