我必須做出哪些存儲不同的值作爲僞代碼的毗連字符串變量的值,以形成新的變
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