我正在尝试使用粘贴函数在r中的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
感谢您的帮助!
答案 0 :(得分:1)
从文档中,paste0
的输出是字符向量,而不是变量。您无法使用字符向量和<-
运算符分配到变量中,因为您需要assign()
。
但无论如何,你最好在实际的list
中存储相关sql结果的列表,而不是一堆变量。保持环境更整洁,更容易以编程方式访问