options ls=80 nocenter; filename indat 'asciiqob.txt'; libname save 'sasdata'; *goptions device=xcolor; filename grafout pipe 'lpr -Pbrar'; goptions device=pslmono gsfname=grafout gsfmode=replace gaccess=sasgastd vsize=7 vorigin=3 ftext=centx; /* read stripped ak-91 extract and process means for figures */ data zero; infile indat; input lwklywge educ yob qob pob; proc means; title '1980 qob extract'; data one; set zero; %MACRO QTRSYR; QTR220 QTR320 QTR420 QTR221 QTR321 QTR421 QTR222 QTR322 QTR422 QTR223 QTR323 QTR423 QTR224 QTR324 QTR424 QTR225 QTR325 QTR425 QTR226 QTR326 QTR426 QTR227 QTR327 QTR427 QTR228 QTR328 QTR428 QTR229 QTR329 QTR429 %mend; LENGTH QTR120 3 %QTRSYR 3 YR20-YR29 3 QTR1-QTR4 3; ARRAY AQTR QTRSYR; DO OVER AQTR; AQTR = 0 ; END; YR20 = ((YOB=30) OR (YOB=40)); YR21 = ((YOB=31) OR (YOB=41)); YR22 = ((YOB=32) OR (YOB=42)); YR23 = ((YOB=33) OR (YOB=43)); YR24 = ((YOB=34) OR (YOB=44)); YR25 = ((YOB=35) OR (YOB=45)); YR26 = ((YOB=36) OR (YOB=46)); YR27 = ((YOB=37) OR (YOB=47)); YR28 = ((YOB=38) OR (YOB=48)); YR29 = ((YOB=39) OR (YOB=49)); QTR1 = (QOB=1); QTR2 = (QOB=2); QTR3 = (QOB=3); QTR4 = (QOB=4); QTR120 = QTR1 * YR20; QTR220 = QTR2 * YR20; QTR320 = QTR3 * YR20; QTR420 = QTR4 * YR20; QTR121 = QTR1 * YR21; QTR221 = QTR2 * YR21; QTR321 = QTR3 * YR21; QTR421 = QTR4 * YR21; QTR122 = QTR1 * YR22; QTR222 = QTR2 * YR22; QTR322 = QTR3 * YR22; QTR422 = QTR4 * YR22; QTR123 = QTR1 * YR23; QTR223 = QTR2 * YR23; QTR323 = QTR3 * YR23; QTR423 = QTR4 * YR23; QTR124 = QTR1 * YR24; QTR224 = QTR2 * YR24; QTR324 = QTR3 * YR24; QTR424 = QTR4 * YR24; QTR125 = QTR1 * YR25; QTR225 = QTR2 * YR25; QTR325 = QTR3 * YR25; QTR425 = QTR4 * YR25; QTR126 = QTR1 * YR26; QTR226 = QTR2 * YR26; QTR326 = QTR3 * YR26; QTR426 = QTR4 * YR26; QTR127 = QTR1 * YR27; QTR227 = QTR2 * YR27; QTR327 = QTR3 * YR27; QTR427 = QTR4 * YR27; QTR128 = QTR1 * YR28; QTR228 = QTR2 * YR28; QTR328 = QTR3 * YR28; QTR428 = QTR4 * YR28; QTR129 = QTR1 * YR29; QTR229 = QTR2 * YR29; QTR329 = QTR3 * YR29; QTR429 = QTR4 * YR29; keep yr21-yr29 %qtrsyr educ lwklywge qtr1-qtr3; *******************************************************; proc means; title 'working data set'; proc syslin data=one; title 'OLS'; model lwklywge = yr21-yr29 educ; /* part I: 30 instrument case */ proc syslin data=one 2sls; title '30-instrument case: regular 2sls'; instruments yr21-yr29 %qtrsyr; endogenous lwklywge educ; model lwklywge = yr21-yr29 educ/overid; run;