在R中修改来自'stop()'调用的错误消息
在下面我的在R中修改来自'stop()'调用的错误消息,r,function,dataframe,R,Function,Dataframe,在下面我的stop呼叫中,我收到一条如下消息: 错误:在“数据”中找不到cname。在“数据”中找不到hhk。 我想知道是否有一种方式可以让消息看起来像: 在“数据”中找不到“cname”、“hhk”。 这在R基地是可能的吗 vars = c("cname", "hhk") a = 1 if(a) stop(paste(vars, "not found in the 'data'.")) Current Error message:
stop
呼叫中,我收到一条如下消息:
错误:在“数据”中找不到cname。在“数据”中找不到hhk。
我想知道是否有一种方式可以让消息看起来像:
在“数据”中找不到“cname”、“hhk”。
这在R基地是可能的吗
vars = c("cname", "hhk")
a = 1
if(a) stop(paste(vars, "not found in the 'data'."))
Current Error message: Error: cname not found in the 'data'.hhk not found in the 'data'.
Desired Error message: 'cname', 'hhk' not found in the 'data'.
将
vars
折叠为一个字符串:
vars = c("cname", "hhk")
a = 1
if(a) stop(paste(toString(vars), "not found in the 'data'."))
#Error: cname, hhk not found in the 'data'.
将
vars
折叠为一个字符串:
vars = c("cname", "hhk")
a = 1
if(a) stop(paste(toString(vars), "not found in the 'data'."))
#Error: cname, hhk not found in the 'data'.
可以使用两个
paste
命令执行此操作:
if(a) stop("'",paste(paste(vars,collapse = "', '",sep = ""), "' not found in the 'data'.",sep = ""))
Error: 'cname', 'hhk' not found in the 'data'.
可以使用两个
paste
命令执行此操作:
if(a) stop("'",paste(paste(vars,collapse = "', '",sep = ""), "' not found in the 'data'.",sep = ""))
Error: 'cname', 'hhk' not found in the 'data'.
我们可以使用
stopifnot
stopifnot(a)
或使用
glue
if(a) stop(glue::glue("{toString(vars)} not found in the data"))
#Error: cname, hhk not found in the data
我们可以使用
stopifnot
stopifnot(a)
或使用
glue
if(a) stop(glue::glue("{toString(vars)} not found in the data"))
#Error: cname, hhk not found in the data