我必须做出哪些存储不同的值作为伪代码的毗连字符串变量的值,以形成新的变
for(i in 1:30)
"Day"+i <- sqldf("select * from call_details where day ="+i)
给出是否有可能在R或没有,如果可能,那么如何动态变量?我只是能够连接字符串(使用paste),将字符串存储为字符,但无法存储值。此外,我无法找到如何在sql查询语句上传递变量。
我必须做出哪些存储不同的值作为伪代码的毗连字符串变量的值,以形成新的变
for(i in 1:30)
"Day"+i <- sqldf("select * from call_details where day ="+i)
给出是否有可能在R或没有,如果可能,那么如何动态变量?我只是能够连接字符串(使用paste),将字符串存储为字符,但无法存储值。此外,我无法找到如何在sql查询语句上传递变量。
你应该在一个结构存储类似的数据像list
,而不是自由浮动的变量。这在开始时可能看起来很奇怪,但是当我说这样可以防止更多的悲伤时,请相信我。例如:
Days <- lapply(1:30,function(i) sqldf(paste("select * from call_details where day =",i)))
然后你就可以访问列表的组件,如:
Days[[1]]
Days[[2]]
etc etc
而不是使用day1
day2
等等等等
您可能想要查看assign
以便能够以您描述的方式构造变量。一般来说,你可以使用paste
,但你用逗号连接字符串,而不是加号。
类似以下内容:
for(i in 1:30)
assign(paste0("Day",i), sqldf(paste("select * from call_details where day =",i)))
对于把各种变量纳入选择字符串见例5的sqldf主页:http://sqldf.googlecode.com – 2013-05-11 22:35:27