有没有一种方法可以检查R环境中是否存在值,如果== TRUE,则分配此现有值,否则分配其他值?
换句话说,我的R中现在没有任何东西,并且创建了if if语句。
test <- if_else(exists("my_value"), my_value, "my value missing, assigning this string")
的结果
exists("my_value")
是:
exists("my_value")
[1] FALSE
但是一旦我运行了整个代码,我就会得到这个
if_else(exists(“ my_value”),my_value,“缺少我的值,分配了此字符串”)中的错误: 找不到对象“ my_value”
答案 0 :(得分:3)
if(){} else {} 更适合这种情况:
if(exists("my_value")){
test <- my_value } else {
test <- "my value missing, assigning this string"}
使用dplyr::if_else(condition, true, false, missing = NULL)
无效,因为它正在检查 true 和 false 的值具有相同的长度,类,类型,因此错误
我想如果我们设法以某种方式为同一类的true和false赋值,就可以用if_else
完成。