我如何读取(从文件中)一个值,"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
Run Code Online (Sandbox Code Playgroud)
这是我能得到的最接近的.但我不喜欢它,因为它牺牲了很多普遍性.
f <- "as.integer"
v <- NA
do.call(f, list(v))
Run Code Online (Sandbox Code Playgroud)
编辑:添加尾随下划线
根据 ?NA
NA是长度为1的逻辑常量,其包含缺失值指示符.除了原始NA之外,NA可以被强制转换为任何其他矢量类型.还存在支持缺失值的其他原子向量类型的常量NA_integer_,NA_real_,NA_complex_和NA_character_:所有这些都是R语言中的保留字.
所以我们需要
q <- "NA_integer_"
Run Code Online (Sandbox Code Playgroud)
然后使用
eval(parse(text=q))
#[1] NA
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
500 次 |
| 最近记录: |