你如何在 R 中使用间接引用?更具体地说,在下面的简单读取语句中,我希望能够使用变量名将 inputFile 读入数据表 myTable。
myTable <- read.csv(inputFile, sep=",", header=T)
而不是上面的,我想定义
refToMyTable <-“我的表”
那么,如何使用 refToMyTable 而不是 myTable 将 inputFile 读入 myTable?
谢谢您的帮助。
你如何在 R 中使用间接引用?更具体地说,在下面的简单读取语句中,我希望能够使用变量名将 inputFile 读入数据表 myTable。
myTable <- read.csv(inputFile, sep=",", header=T)
而不是上面的,我想定义
refToMyTable <-“我的表”
那么,如何使用 refToMyTable 而不是 myTable 将 inputFile 读入 myTable?
谢谢您的帮助。
R 并没有这样的引用,但是您可以使用字符串来检索/创建该名称的变量。
但首先让我说这通常不是一个好的做法。如果你想做这类事情,这通常表明你不是在“R 方式”做这件事。
尽管如此
assign(refToMyTable, read.csv(inputFile, sep=",", header=T))
应该出招。补充assign
是get
使用变量的名称检索变量的值。
也许assign
正如弗利克先生所提到的那样。
当您想要名为“myTable”的对象的内容时,您可以使用get
:
get("myTable")
get(refToMyTable) # since get will evaluate its argument
(最好将多个此类数据帧的结果分配给一个 ist 对象或一个参考类。)
如果您想要一个语言名称对象,您将使用as.name
:
as.name("myTable")
# myTable .... is printed at the console; note no quotes
str(as.name("myTable"))
#symbol myTable
我认为您的意思如下:
reftomytable='~/Documents/myfile.csv'
myTable=read.csv(reftomytable)