PROC hazrate(dat, year, white, female, cause); local ee, iage, haz; /*year ? */ ee=(dat[.,1].eq year); /* white ?*/ ee= ee.*(dat[.,3].eq (white.gt 0)); /* female ? */ ee=ee.*(dat[.,4].eq (female.gt 0)); /* cause ? */ ee=ee.*(dat[.,6].eq cause); dat=selif(dat,ee); haz=zeros(200,1); for iage (1,rows(dat),1); haz[dat[iage,2]+1]=dat[iage,7]./dat[iage,5]; endfor; haz=minc((haz~ones(200,1))'); RETP(haz); ENDP; cls; load dat[]=bodeathrates2.txt; dat=reshape(dat,rows(dat)/8,8); /* 1970 */ "1970"; fe=1; wh=1; yr=1970; haz_70wf=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=0; wh=1; yr=1970; haz_70wm=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=1; wh=0; yr=1970; haz_70bf=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=0; wh=0; yr=1970; haz_70bm=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); save haz_70wf, haz_70wm, haz_70bf, haz_70bm; /* 1980 */ "1980"; fe=1; wh=1; yr=1980; haz_80wf=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=0; wh=1; yr=1980; haz_80wm=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=1; wh=0; yr=1980; haz_80bf=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=0; wh=0; yr=1980; haz_80bm=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); save haz_80wf, haz_80wm, haz_80bf, haz_80bm; /* 1990 */ "1990"; fe=1; wh=1; yr=1990; haz_90wf=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=0; wh=1; yr=1990; haz_90wm=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=1; wh=0; yr=1990; haz_90bf=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=0; wh=0; yr=1990; haz_90bm=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); save haz_90wf, haz_90wm, haz_90bf, haz_90bm; /* 2000 */ "2000"; fe=1; wh=1; yr=2000; haz_00wf=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=0; wh=1; yr=2000; haz_00wm=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=1; wh=0; yr=2000; haz_00bf=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); fe=0; wh=0; yr=2000; haz_00bm=hazrate(dat,yr,wh,fe,1)~hazrate(dat,yr,wh,fe,21)~hazrate(dat,yr,wh,fe,22)~hazrate(dat,yr,wh,fe,3); save haz_00wf, haz_00wm, haz_00bf, haz_00bm;