使环境更整洁,以后更容易以编程方式访问
我试图在r中使用paste函数定义for循环中的变量,示例如下:
for (i in 1:length(XX)) {
(paste0("Test",Name[i],sep="")) <- sqlQuery(channel, paste("SampleQuery", sep = ""))
}
我得到以下错误:
Error in (paste0("Test", Name[i], sep = "")) <- sqlQuery(channel, :
target of assignment expands to non-language object
谢谢你的帮助!
从文档中可以看出,paste0
的输出是字符向量,而不是变量。您不能使用字符向量和<-
操作符来分配给变量,因此您需要assign()
。
但无论如何,您最好将相关sql结果列表存储在实际的list
中,而不是一堆变量。