我有一个由循环创建的名为paste0(i, "_SA")的数据框。我想打印第四列,但既不能使用$也不能用[,4]。 paste0(i, "_SA")[,4]会出现错误"维度不正确",即使在循环外使用像US_SA[,4]这样的语法也能正常工作。如何引用名为paste0的数据框的列?
我们可以使用get方法获取对象的值。for(i in c("US", "UK")) { print(get(paste0(i, "_SA"))[, 4]) } 在使用 mget 进行paste操作后,也可以将其加载到一个 list中(因为paste是矢量化的)。 lst1 <- mget(paste0(c("US", "UK"), "_SA"))
paste0(i, "_SA")
时才能使用。OP要求动态替换i
,而且OP已经提到了if I use this outside of the loop like US_SA[,4] it works
。 - akrunpaste0(i, "_SA")
的数据框。 - sm925