Dear Statalists,
Part of my data is as follows.
Code:
* Example generated by -dataex-. For more info, type help dataex
clear
input double preterm float(age35 event female overobes)
0 0 0 0 0
0 0 0 1 0
0 0 0 0 0
0 0 0 1 0
0 0 0 0 1
0 0 0 1 1
0 0 0 0 1
0 0 0 1 1
0 0 0 0 2
0 0 0 1 2
0 0 0 0 2
0 0 0 1 2
0 1 0 0 0
0 1 0 1 0
0 1 0 0 0
0 1 0 1 0
0 1 0 0 1
0 1 0 1 1
0 1 0 0 1
0 1 0 1 1
0 1 0 0 2
0 1 0 1 2
0 1 0 0 2
0 1 0 1 2
1 0 0 0 0
1 0 0 1 0
1 0 0 0 0
1 0 0 1 0
1 0 0 0 1
1 0 0 1 1
1 0 0 0 1
1 0 0 1 1
1 0 0 0 2
1 0 0 1 2
1 0 0 0 2
1 0 0 1 2
1 1 0 0 0
1 1 0 1 0
1 1 0 0 0
1 1 0 1 0
1 1 0 0 1
1 1 0 1 1
1 1 0 0 1
1 1 0 1 1
1 1 0 0 2
1 1 0 1 2
1 1 0 0 2
1 1 0 1 2
0 0 1 0 0
0 0 1 1 0
end
label values overobes overobeslbl
label def overobeslbl 0 "neither", modify
label def overobeslbl 1 "overweight", modify
label def overobeslbl 2 "obese", modify
I want to select a 1:2 case-control sample, matched on mothers age35 and female ("event" indicates case). but as my whole dataset is very large (over 500,000 obs), so I can't use "joinby". Does anyone have any other solutions?

Thanks!