我有一些基本上按时间解析数据集的 SQL 查询(POSIXct 日期格式):
library(sqldf)
data_2013 <- sqldf("SELECT * FROM data WHERE strftime('%Y-%m-%d', time,
'unixepoch', 'localtime') >= '2013-01-01' AND strftime('%Y-%m-%d', time,
'unixepoch', 'localtime') <= '2013-12-31'")
data_2012 <- sqldf("SELECT * FROM data WHERE strftime('%Y-%m-%d', time,
'unixepoch', 'localtime') >= '2012-01-01' AND strftime('%Y-%m-%d', time,
'unixepoch', 'localtime') <= '2012-12-31'")
data_2011 <- sqldf("SELECT * FROM data WHERE strftime('%Y-%m-%d', time,
'unixepoch', 'localtime') >= '2011-01-01' AND strftime('%Y-%m-%d', time,
'unixepoch', 'localtime') <= '2011-12-31'")
但是,这段代码对我来说似乎很笨拙。有没有一种巧妙的方法可以将其包装成一个函数或其他一些使它更短的方法,同时仍然吐出相同的 3 个单独的数据集?