Phi*_*eld 0 r reference object formula
我正在解析R公式的左侧.在我的特定情况下,这可以是带索引的变量或对象(类似myvariable[[3]]).我想访问该对象的第三个子对象并将其存储在另一个对象中.以下示例从我拥有索引对象的字符串开始,但我需要引用.
mychars <- c("a", "b", "c")
mystring <- "mychars[2]"
get(mystring)                # does not work
eval(as.name(mystring))      # does not work either
我当然可以使用正则表达式解析数字并使用as.numeric它将其转换为真实索引.但在某些情况下,可能会有名称索引,如mystring["second"].那我怎样才能提取子对象呢?
你可以parse然后eval这个表达.
mychars <- c("a", "b", "c")
mystring <- "mychars[2]"
eval(parse(text = mystring))
[1] "b"
它也适用于命名索引
names(mychars) <- c("first", "second", "third")
eval(parse(text = 'mychars["second"]'))
second 
   "b"
| 归档时间: | 
 | 
| 查看次数: | 1300 次 | 
| 最近记录: |