行政裁判所で完了した個々のケースを表す、590 万行と 4 列のデータフレーム「x」があります。データは stata データセットからインポートされ、日付フィールドは整数として入力されました。これは私の目的には問題ありません。問題のケースの完了日から 30 日以内に裁判官が完了したケースの数を計算して、ケースロード変数を作成したいと考えています。
最初の 34 行のデータは次のとおりです。
idnumber compdate judge
1 9615 JVC
2 15316 BAN
3 15887 WLA
4 11968 WFN
5 15001 CLR
6 13914 IEB
7 14760 HSD
8 11063 RJD
9 10948 PPL
10 16502 BAN
11 15391 WCP
12 14587 LRD
13 10672 RTG
14 11864 JCW
15 15071 GMR
16 15082 PAM
17 11697 DLK
18 10660 ADP
19 13284 ECC
20 13052 JWR
21 15987 MAK
22 10105 HEA
23 14298 CLR
24 18154 MMT
25 10392 HEA
26 10157 ERH
27 9188 RBR
28 12173 JCW
29 10234 PAR
30 10437 ADP
31 11347 RDW
32 14032 JTZ
33 11876 AMC
34 11470 AMC
これが私が思いついたものです。したがって、レコードごとに、その特定の裁判官のデータのサブセットを取得し、30 日間のウィンドウで決定されたケースをサブセット化し、サブセット化されたデータフレーム内のベクトルの長さを対象ケースのケースロード変数に割り当てます。次のように:
for(i in 1:length(x$idnumber)){
e<-x$compdate[i]
f<-e-29
a<-x[x$judge==x$judge[i] & !is.na(x$compdate),]
b<-a[a$compdate<=e & a$compdate>=f,]
x$caseload[i]<-length(b$idnumber)
}
動作していますが、完了するまでに非常に時間がかかります。これを最適化するにはどうすればよいか、またはこれをより簡単に行うにはどうすればよいですか。申し訳ありませんが、私は r とプログラミングに非常に慣れていません - 私は裁判所のデータを分析しようとしている法律の教授です.... あなたの助けに感謝します。ありがとう。ケン