gpt4 book ai didi

R 函数 : Print Warning Only on First Call of Function

转载 作者:行者123 更新时间:2023-12-03 14:05:19 26 4
gpt4 key购买 nike

所以我正在尝试编写一个打印错误消息的函数,但仅在用户第一次调用该函数时。如果他们打开 R、加载库并调用该函数,它将打印一条警告消息。如果他们再次调用该函数,则不会打印此警告消息。如果他们关闭 R 并执行相同的过程,它将为第一次调用而不是在第二次调用时打印警告消息。我了解 R 中基本 warning() 函数的想法,但我在帮助文件中没有看到有关此类情况的任何文档。有谁知道可以与 warning() 函数一起使用的函数或条件可以解决这个问题?谢谢!我正在做一个项目,负责教授需要这个来处理某种版权问题,他希望它是这样的。

最佳答案

执行此操作的一个软件包是 quantmod .当您使用 getSymbols功能,它会警告您即将更改默认值。它使用 options 这样做.

"getSymbols" <- function(Symbols=NULL,...) {
if(getOption("getSymbols.warning4.0",TRUE)) {
# transition message for 0.4-0 to 0.5-0
message(paste(
' As of 0.4-0,',sQuote('getSymbols'),'uses env=parent.frame() and\n',
'auto.assign=TRUE by default.\n\n',
'This behavior will be phased out in 0.5-0 when the call will\n',
'default to use auto.assign=FALSE. getOption("getSymbols.env") and \n',
'getOptions("getSymbols.auto.assign") are now checked for alternate defaults\n\n',
'This message is shown once per session and may be disabled by setting \n',
'options("getSymbols.warning4.0"=FALSE). See ?getSymbol for more details'))
options("getSymbols.warning4.0"=FALSE)
}
#rest of function....
}

因此,他们检查名为“getSymbols.warning4.0”的选项,如果未找到则默认为 TRUE。然后,如果未找到,它们会显示一条消息(您可能会显示一条警告),然后将该选项设置为 FALSE,以便下次不会显示该消息。

关于R 函数 : Print Warning Only on First Call of Function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24812271/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com