如何根据R中的字符串获取dataframe $ field值?

时间:2017-10-17 20:21:12

标签: r

我有一个数据框,需要根据列名提取列。我事先并不知道会调用什么标题,但我知道的对象会知道。

因此,我们假设数据框称为target_data,它有一个名为Treatment_Time的字段。所以通常我会通过target_data $ Treatment_Time访问它,事情就没事了。在这种情况下,我有一个字符串变量,包含" Treatment_Time"。让我们说myField< - " Treatment_Time"。

我想通过使用myField变量来访问target_data $ Time。

我已经在其他地方寻找并尝试过以下方法:

> test <- paste("target_data", "$", my_field, sep="")
> test
  [1] "target_data$Treatment_Time"

> eval(test)
  [1] "target_data$Treatment_Time"

> eval(as.name(test))
  Error in eval(as.name(test)) : 
    object 'target_data$Treatment_Time' not found

> eval(as.symbol(test))
  Error in eval(as.name(test)) : 
    object 'target_data$Treatment_Time' not found

> eval(parse(test))
    Error in file(filename, "r") : cannot open the connection
    In addition: Warning message:
    In file(filename, "r") :
      cannot open file 'target_data$Treatment_Time': No such file or 
      directory

> get(test)
    Error in get(test) : object 'target_data$Treatment_Time' not found

> get("target_data")$test
    NULL

所以这次霰弹枪方法不起作用。有谁知道如何做到这一点?谢谢!

0 个答案:

没有答案