ちょっとしたバックグラウンド: 私は統計を通じてプログラミングを始めましたが、正式なプログラミング経験はあまりありません。物事を機能させる方法を知っているだけです。私は異なる方向からこれに来るための提案を受け入れていますが、現在、複数の sqldf クエリを使用して目的のデータを取得しています。私はもともと SAS で統計プログラミングを始めましたが、定期的に使用したものの 1 つはマクロ プログラミング機能でした。
簡単な例として、テーブル 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
私が現在使用している選択ステートメントは次の形式です。
sqldf("SELECT AVG(A), SUM(B) FROM A WHERE DateAdded >= '2012-01-01' AND DateAdded <= '2012-01-31'")
ここで、DateAdded が 2 月にあるエントリに対して同じクエリを実行したいと思います。私の SAS での経験から、DateAdded の値に対してマクロ変数を作成します。これを (非常に遅い) for ループとして実行することを検討しましたが、R 変数を sqldf に渡す方法、またはそれが可能かどうかさえわかりません。私のテーブルでは、何年にもわたるデータに対して同じクエリを使用しています。コードを合理化する方法は大歓迎です。