R: 将“NULL”转换为“NULL”?

R: Ho to convert `"NULL"` into `NULL`?

提问人:Someone2 提问时间:11/8/2023 更新时间:11/9/2023 访问量:54

问:

如何在 R 中将显示 NULL () 的字符串转换为实际值?"NULL"NULL

我得到一个包含字符串或(也是一个字符串)的 envvar,我的 R 代码正在寻找一个字符串或 .这看起来很简单,但例如不起作用:"NULL"NULLstringr::str_replace_all("test", 'NULL', NULL)

> stringr::str_replace_all("test", 'NULL', NULL)
Error in `stringr::str_replace_all()`:
! `replacement` must be a character vector, not `NULL`.
r 字符串 null 类型转换

评论

2赞 Jon Spring 11/8/2023
我希望你想要这里,而不是.stackoverflow.com/q/15496361/6851825NA_character_NULL
2赞 Rui Barradas 11/8/2023
转换为实际元素将从向量中删除该元素。你能满足吗?NULLNA
1赞 Jon Spring 11/8/2023
或者也许 ?a <- "NULL"; if(a == "NULL") NULL else a
0赞 Someone2 11/8/2023
@JonSpring if/else 解决方案是我现在要去的方向。如果成功了,请发布这个问题的答案。
1赞 Roland 11/8/2023
我很确定你不想要,它不能是字符向量的一部分。您需要 ,这表示 R 中缺少值。NULLNA

答:

0赞 Someone2 11/9/2023 #1

我设法用一个更简单的if/else来让它开始:

fun(
base.url = if (Sys.getenv('BASE_URL') == 'NULL') {as.null()} else {Sys.getenv('BASE_URL')}, ...) {
...
}