使用sqlQuery在for循环中使用paste in r定义变量



我试图在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中,而不是一堆变量。

使环境更整洁,以后更容易以编程方式访问

相关内容

  • 没有找到相关文章

最新更新