作者:下个路口见的 | 来源:互联网 | 2023-01-10 16:35
我如何读取(从文件中)一个值,"NA_integer"
并让R解释它,就好像NA_integer
是明确键入的一样.
以下是我失败的两次尝试:
q <- "NA_integer_"
get(q) # Returns "Error in get(q) : object 'NA_integer_' not found"
eval(q) # Returns the character value
这是我能得到的最接近的.但我不喜欢它,因为它牺牲了很多普遍性.
f <- "as.integer"
v <- NA
do.call(f, list(v))
编辑:添加尾随下划线
1> akrun..:
根据 ?NA
NA是长度为1的逻辑常量,其包含缺失值指示符.除了原始NA之外,NA可以被强制转换为任何其他矢量类型.还存在支持缺失值的其他原子向量类型的常量NA_integer_,NA_real_,NA_complex_和NA_character_:所有这些都是R语言中的保留字.
所以我们需要
q <- "NA_integer_"
然后使用
eval(parse(text=q))
#[1] NA