I need to create a new binary variable, case (0=no, 1=yes) if a person's disease event date (dz_date) is within a +/- 3 month window of any blood test date (test_date). Each person has many blood test dates but generally only 1 disease date. Each event (disease event or test event) is listed seperately in my dataset and individuals are linked by an ID number (PID).
My data looks like this:
Obs
PID
test_date
dz_date
1
101
4/1/2013
2
101
8/22/2013
3
101
11/10/2013
4
101
6/18/2013
5
102
2/11/2013
6
102
8/14/2013
7
102
12/23/2013
8
102
2/4/2014
9
203
6/21/2013
10
203
2/5/2013
There are over a million observations in this dataset and the # of entries for each PID is varied. One idea I had is to create an upper and lower limit to measure the dz_date against using the below code but I'm not sure if I can compare values working down the PID column. I thought about using first.PID/last.PID...?
test_date_lower3= intnx('month',test_date,-3);
test_date_upper3=intnx('month',test_date,+3);
Help!
... View more