R如何赋值和引用从字符串转换而来的变量名
我的问题嵌入在下面的代码中 我已经从字符串中创建了变量名,我可以给这些变量名赋值(在本例中是一个列表),但是我不能对列表执行任何简单的操作,除非我使用创建的变量名,我不想这样做。如何使用这些列表执行简单操作,例如示例中的cbindR如何赋值和引用从字符串转换而来的变量名,r,cbind,R,Cbind,我的问题嵌入在下面的代码中 我已经从字符串中创建了变量名,我可以给这些变量名赋值(在本例中是一个列表),但是我不能对列表执行任何简单的操作,除非我使用创建的变量名,我不想这样做。如何使用这些列表执行简单操作,例如示例中的cbind id = c(96, 99) namevector = paste("id.", per, sep = "") assign(namevector[1],c(2,3)) assign(namevector[2],c(52,53)) cbind(id.96, id.99
id = c(96, 99)
namevector = paste("id.", per, sep = "")
assign(namevector[1],c(2,3))
assign(namevector[2],c(52,53))
cbind(id.96, id.99) # This is the desired answer. How do I get it, without using "id.96" or "id.99"?
#here are ideas that did not work
cbind(namevector[1], namevector[2])
cbind(as.name(namevector[1]), as.name(namevector[2]))
我们可以使用
mget
返回list
中对象的值,然后使用do.call将list
元素返回到单个数据集
do.call(cbind, mget(namevector))
# id.96 id.99
#[1,] 2 52
#[2,] 3 53
假设per
是id
,我们可以使用mget
返回列表中对象的值,然后使用do.call将list
元素返回到单个数据集
do.call(cbind, mget(namevector))
# id.96 id.99
#[1,] 2 52
#[2,] 3 53
假设per
是id