簡體   English   中英

抑制打印到屏幕的平穩性測試的輸出

[英]Suppress output of stationarity test that is printed to screen

如何從R中的fractal package中獲得stationarity測試,以便不將任何輸出打印到屏幕上。

例如,使用shapiro.wilk測試將結果設置為變量時,它不會提供任何輸出,如下所示

lg.day.ret.vec <- rnorm(100, mean = 5, sd = 3)

shap.p <- shapiro.test(lg.day.ret.vec)$p.value

這是大多數測試的情況,但是當我為stationarity測試時,我在r控制台中獲得了一些輸出。

library(fractal)

stat.p <- attr(stationarity(lg.day.ret.vec),"pvals")[1]
1
2
3
4
5
6
N = 2609, nblock = 11, n_block_max = 238, dt =     1.0000
7
8
9
10
11
12
13
14
15
16
17
18

實際上,您可以通過重新路由來抑制輸出到R控制台。 R utilssinkcapture.output中提供了兩種方法。 這兩種方法都旨在將輸出發送到文件。

由於要抑制單個表達式的輸出,因此可以使用capture.outputfile=NULL (默認值)。 這將以字符串形式返回輸出。 要防止在R控制台中顯示此返回的字符串 ,可以使用invisible

最終的代碼可以是:

library(fractal)

lg.day.ret.vec <- rnorm(100, mean = 5, sd = 3)
shap.p <- shapiro.test(lg.day.ret.vec)$p.value

invisible(capture.output(
    stat.p <- attr(stationarity(lg.day.ret.vec),"pvals")[1]
))

希望這可以幫助。 如果沒有,請告訴我。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM