只是一点背景:我是通过统计进入编程的,我没有太多正式的编程经验,我只是知道如何让事情发挥作用。我愿意接受任何从不同方向提出的建议,但我目前正在使用多个 sqldf 查询来获取我想要的数据。我最初是在 SAS 中开始统计编程的,我经常使用的东西之一是宏编程能力。
举一个简单的例子,假设我的表 A 如下所示:
Name Sex A B DateAdded
John M 72 1476 01/14/12
Sue F 44 3269 02/09/12
Liz F 90 7130 01/01/12
Steve M 21 3161 02/29/12
我当前使用的 select 语句的形式是:
sqldf("SELECT AVG(A), SUM(B) FROM A WHERE DateAdded >= '2012-01-01' AND DateAdded <= '2012-01-31'")
现在我想对 DateAdded 在二月份的输入运行相同的查询。根据我对 SAS 的经验,您将为 DateAdded 的值创建宏变量。我考虑过将其作为(非常非常慢的)for 循环运行,但我不确定如何将 R 变量传递给 sqldf,或者这是否可能。在我的表中,我在多年的数据中使用相同的查询——任何简化我的代码的方法都将不胜感激。