R 使用动态创建的角色对象引用现有数据帧

R 使用动态创建的角色对象引用现有数据帧,r,merge,assign,R,Merge,Assign,这感觉好像应该有一个简单的解决方案,但它逃避我 我有一组现有的数据帧,称为set1、set2和set3。我想分别将它们与另一个数据帧合并,如下所示: a <- merge(bigdata, set1, by = keyID) b <- merge(bigdata, set2, by = keyID) c <- merge(bigdata, set3, by = keyID) ... 我明白了: > "set1" 但是我想使用“set1”引用来表示合并代码中适当的数据帧

这感觉好像应该有一个简单的解决方案,但它逃避我

我有一组现有的数据帧,称为set1、set2和set3。我想分别将它们与另一个数据帧合并,如下所示:

a <- merge(bigdata, set1, by = keyID)
b <- merge(bigdata, set2, by = keyID)
c <- merge(bigdata, set3, by = keyID)
...
我明白了:

> "set1"

但是我想使用“set1”引用来表示合并代码中适当的数据帧,而不仅仅是类“chr”的对象。一如既往,任何帮助都是非常感谢的。

您可以按照朱巴的建议使用
get
,或者创建一个输入列表

 bigset<-list(set1=set1,set2=set2, [etc)
 abc_list <- sapply(1:length(bigset) function(j) merge(bigdata,bigset[[j]])
> "set1"
 bigset<-list(set1=set1,set2=set2, [etc)
 abc_list <- sapply(1:length(bigset) function(j) merge(bigdata,bigset[[j]])
setnames<-ls(pattern='set[0-9]{1,})
abc_list<-sapply(1:length(setnames), function(j) merge(bigdata,get(setnames[j]))