/* open cleaned data generated in data_cleaning.do */ clear set memory 80m set more off /* log using c:\lotteries\1997\output\elk_1997.log, replace */ use c:\lotteries\1997\intermediate\elk_res_1997_2.dta /* assign id numbers and identify a unique huntcode for each huntcode */ drop choice_2-state resident-purchase age generate obsno=group(_N) generate unique=0 if (lottery[_n]==lottery[_n+1]) replace unique=1 if unique==. drop if obsno>18708 save c:\lotteries\1997\intermediate\elk_res_1997_3.dta, replace clear /* random draws of hunt codes; currently rifle only draws */ /* observations 1 to 1000 */ #delimit ; for num 1/1000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_1.dta for num 2/1000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 1/1000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws0.dta, replace clear /* observations 1001 to 2000 */ #delimit ; for num 1001/2000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_1001.dta for num 1002/2000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 1001/2000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws1.dta, replace clear /* observations 2001 to 3000 */ #delimit ; for num 2001/3000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_2001.dta for num 2002/3000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 2001/3000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws2.dta, replace clear /* observations 3001 to 4000 */ #delimit ; for num 3001/4000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_3001.dta for num 3002/4000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 3001/4000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws3.dta, replace clear /* observations 4001 to 5000 */ #delimit ; for num 4001/5000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_4001.dta for num 4002/5000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 4001/5000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws4.dta, replace clear /* observations 5001 to 6000 */ #delimit ; for num 5001/6000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_5001.dta for num 5002/6000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 5001/6000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws5.dta, replace clear /* observations 6001 to 7000 */ #delimit ; for num 6001/7000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_6001.dta for num 6002/7000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 6001/7000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws6.dta, replace clear /* observations 7001 to 8000 */ #delimit ; for num 7001/8000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_7001.dta for num 7002/8000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 7001/8000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws7.dta, replace clear /* observations 8001 to 9000 */ #delimit ; for num 8001/9000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_8001.dta for num 8002/9000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 8001/9000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws8.dta, replace clear /* observations 9001 to 10000 */ #delimit ; for num 9001/10000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_9001.dta for num 9002/10000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 9001/10000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws9.dta, replace clear /* observations 10001 to 11000 */ #delimit ; for num 10001/11000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_10001.dta for num 10002/11000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 10001/11000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws10.dta, replace clear /* observations 11001 to 12000 */ #delimit ; for num 11001/12000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_11001.dta for num 11002/12000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 11001/12000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws11.dta, replace clear /* observations 12001 to 13000 */ #delimit ; for num 12001/13000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_12001.dta for num 12002/13000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 12001/13000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws12.dta, replace clear /* observations 13001 to 14000 */ #delimit ; for num 13001/14000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_13001.dta for num 13002/14000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 13001/14000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws13.dta, replace clear /* observations 14001 to 15000 */ #delimit ; for num 14001/15000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_14001.dta for num 14002/15000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 14001/15000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws14.dta, replace clear /* observations 15001 to 16000 */ #delimit ; for num 15001/16000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_15001.dta for num 15002/16000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 15001/16000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws15.dta, replace clear /* observations 16001 to 17000 */ #delimit ; for num 16001/17000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_16001.dta for num 16002/17000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 16001/17000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws16.dta, replace clear /* observations 17001 to 18000 */ #delimit ; for num 17001/18000: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr use c:\lotteries\1997\intermediate\alt_17001.dta for num 17002/18000: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 17001/18000: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws17.dta, replace clear /* observations 18001 to 18708 */ #delimit ; for num 18001/18708: use "c:\lotteries\1997\intermediate\elk_res_1997_3.dta" \ drop if unique==0 & obsno~=X \ drop if choice_1[_n-1]==choice_1[_n] \ sample 6.5 if (obsnoX) \ generate id=X \ generate choice= _n \ replace choice=0 if choice<10 \ replace choice=1 if choice>0 \ save "c:\lotteries\1997\intermediate\alt_X.dta", replace \ clear ; #delimit cr /* this merges each of the random draws for the 1000-individual subsets */ use c:\lotteries\1997\intermediate\alt_18001.dta for num 18002/18708: append using "c:\lotteries\1997\intermediate\alt_X.dta" for num 18001/18708: erase "c:\lotteries\1997\intermediate\alt_X.dta" generate chunks=group(1000) drop unique orig_zip save c:\lotteries\1997\intermediate\sorted_draws18.dta, replace clear use c:\lotteries\1997\intermediate\sorted_draws0.dta for num 1/18: append using "c:\lotteries\1997\intermediate\sorted_drawsX.dta" drop id generate id=group(18708) save c:\lotteries\1997\intermediate\sorted_draws.dta, replace for num 0/18: erase "c:\lotteries\1997\intermediate\sorted_drawsX.dta" /* merge origin zipcodes with the randomly drawn hunts */ use c:\lotteries\1997\intermediate\elk_res_1997_3.dta keep obsno orig_zip rename obsno id sort id save c:\lotteries\1997\intermediate\elk_res_1997_4.dta, replace clear use c:\lotteries\1997\intermediate\sorted_draws.dta sort id merge id using c:\lotteries\1997\intermediate\elk_res_1997_4.dta, nokeep drop _merge chunks resobsno save c:\lotteries\1997\intermediate\sorted_draws.dta, replace clear use c:\lotteries\shared\elk_miles.dta rename huntcode choice_1 sort choice_1 orig_zip save c:\lotteries\1997\intermediate\elk_miles_2.dta, replace clear use c:\lotteries\1997\intermediate\sorted_draws.dta sort choice_1 orig_zip merge choice_1 orig_zip using c:\lotteries\1997\intermediate\elk_miles_2.dta, nokeep drop _merge rename miles miles_1 sort id obsno save c:\lotteries\1997\intermediate\sorted_draws.dta, replace clear /* this is code for merging miles with second choice */ /* use c:\lotteries\shared\elk_miles.dta rename huntcode choice_2 sort choice_2 orig_zip save c:\lotteries\1997\intermediate\elk_miles_2.dta, replace clear use c:\lotteries\1997\intermediate\sorted_draws.dta replace choice_2="E-1-164" if choice_2=="E-I-164" replace choice_2="- -" if choice_1=="E-3-407" & name_f=="GARY" & name_l=="NUNN" sort choice_2 orig_zip merge choice_2 orig_zip using c:\lotteries\1997\intermediate\elk_miles_2.dta, nokeep rename miles miles_2 drop _merge sort choice_1 name_l */ /* this merges the hunt characteristics with the random draws */ use c:\lotteries\1997\data\hunts_97.dta sort huntcode rename huntcode choice_1 save c:\lotteries\1997\intermediate\hunts_1997_2.dta, replace use c:\lotteries\1997\intermediate\sorted_draws.dta sort choice_1 merge choice_1 using c:\lotteries\1997\intermediate\hunts_1997_2.dta, nokeep sort id obsno drop _merge save c:\lotteries\1997\intermediate\sorted_draws, replace clear /* this merges applicant characteristics (gender, age) with the random draws */ use c:\lotteries\1997\intermediate\elk_res_1997_2.dta drop choice_2-resident phone-purchase generate obsno=group(_N) drop if obsno>18708 keep obsno gender age rename obsno id sort id save c:\lotteries\1997\intermediate\elk_res_1997_5.dta, replace clear use c:\lotteries\1997\intermediate\sorted_draws.dta sort id merge id using c:\lotteries\1997\intermediate\elk_res_1997_5.dta, nokeep drop _merge save c:\lotteries\1997\intermediate\sorted_draws.dta, replace clear /* this merges the drawn/purchased data with the random draws */ use c:\lotteries\1997\intermediate\elk_res_1997_2.dta keep choice_1 drawn purchase generate obsno=group(_N) drop if obsno>18708 keep obsno choice_1 drawn purchase rename obsno id sort id choice_1 save c:\lotteries\1997\intermediate\elk_res_1997_5.dta, replace clear use c:\lotteries\1997\intermediate\sorted_draws.dta sort id choice_1 merge id choice_1 using c:\lotteries\1997\intermediate\elk_res_1997_5.dta, nokeep generate outcome=1 if choice_1==drawn replace outcome=0 if outcome==. generate outcome2=1 if (purchase~=. & purchase~=0) & choice_1~=drawn replace outcome2=0 if outcome2==. generate male=1 if gender=="M" replace male=0 if male==. generate constant=1 generate prob_prc=licenses/apps95 replace prob_prc=1 if prob_prc>1 generate prob_tru=licenses/apps96 replace prob_tru=1 if prob_tru>1 generate harvest=charv/chunts replace harvest=1 if harvest>1 replace miles=925 if miles==. generate age_sqd=age*age drop gender _merge drawn purchase gsort id -choice drop orig_zip marquez mba rifle bow muzzle handicap save c:\lotteries\1997\intermediate\10_sorted_draws.dta, replace drop choice_1 outsheet using c:\lotteries\1997\data\10_sorted_draws.txt, nonames