/*--------------------------------------------- macro for checking imputed data for detailed file -----------------------------------------------*/ %macro checkimp(imp,orig); title 'checking imputed data'; data check; set &orig; array vars YAYARS02 YAYBOP02 YAYBUS02 YAYCBK02 YAYGRF02 YAYHBK02 YAYHIT02 YAYHOM02 YAYJRD02 YAYROB02 YAYSCL02 YAYSHP02 YAYSKV02 YAYVND02 YAYWEP02 YBYARS02 YBYBOP02 YBYBUS02 YBYCBK02 YBYGRF02 YBYHBK02 YBYHIT02 YBYHOM02 YBYJRD02 YBYPET02 YBYROB02 YBYSCL02 YBYSHP02 YBYSKV02 YBYVND02 YBYWEP02 YCYARS02 YCYBOP02 YCYBUS02 YCYCBK02 YCYDRG02 YCYGRF02 YCYHBK02 YCYHIT02 YCYHOM02 YCYJRD02 YCYPET02 YCYRAB02 YCYROB02 YCYSCL02 YCYSHP02 YCYSKV02 YCYVND02 YCYWEP02 YDYARS02 YDYBOP02 YDYBUS02 YDYCBK02 YDYDRG02 YDYGRF02 YDYHBK02 YDYHIT02 YDYHOM02 YDYJRD02 YDYPET02 YDYRAB02 YDYROB02 YDYSCL02 YDYSHP02 YDYSKV02 YDYVND02 YDYWEP02 YEYARS02 YEYBOP02 YEYBUS02 YEYCBK02 YEYDRG02 YEYGRF02 YEYHBK02 YEYHIT02 YEYJRD02 YEYPET02 YEYRAB02 YEYROB02 YEYRST02 YEYSHP02 YEYSKV02 YEYVND02 YEYWEP02 YFYARS02 YFYBFT02 YFYBOP02 YFYCBK02 YFYDRG02 YFYFRD02 YFYHBK02 YFYHIT02 YFYJRD02 YFYPET02 YFYRAB02 YFYROB02 YFYRST02 YFYRST22 YFYSHP02 YFYSKV02 YFYVND02 YFYWEP02; array miss YAYARSmis YAYBOPmis YAYBUSmis YAYCBKmis YAYGRFmis YAYHBKmis YAYHITmis YAYHOMmis YAYJRDmis YAYROBmis YAYSCLmis YAYSHPmis YAYSKVmis YAYVNDmis YAYWEPmis YBYARSmis YBYBOPmis YBYBUSmis YBYCBKmis YBYGRFmis YBYHBKmis YBYHITmis YBYHOMmis YBYJRDmis YBYPETmis YBYROBmis YBYSCLmis YBYSHPmis YBYSKVmis YBYVNDmis YBYWEPmis YCYARSmis YCYBOPmis YCYBUSmis YCYCBKmis YCYDRGmis YCYGRFmis YCYHBKmis YCYHITmis YCYHOMmis YCYJRDmis YCYPETmis YCYRABmis YCYROBmis YCYSCLmis YCYSHPmis YCYSKVmis YCYVNDmis YCYWEPmis YDYARSmis YDYBOPmis YDYBUSmis YDYCBKmis YDYDRGmis YDYGRFmis YDYHBKmis YDYHITmis YDYHOMmis YDYJRDmis YDYPETmis YDYRABmis YDYROBmis YDYSCLmis YDYSHPmis YDYSKVmis YDYVNDmis YDYWEPmis YEYARSmis YEYBOPmis YEYBUSmis YEYCBKmis YEYDRGmis YEYGRFmis YEYHBKmis YEYHITmis YEYJRDmis YEYPETmis YEYRABmis YEYROBmis YEYRSTmis YEYSHPmis YEYSKVmis YEYVNDmis YEYWEPmis YFYARSmis YFYBFTmis YFYBOPmis YFYCBKmis YFYDRGmis YFYFRDmis YFYHBKmis YFYHITmis YFYJRDmis YFYPETmis YFYRABmis YFYROBmis YFYRSTmis YFYRSTmis YFYSHPmis YFYSKVmis YFYVNDmis YFYWEPmis; keep caseid YAYARSmis YAYBOPmis YAYBUSmis YAYCBKmis YAYGRFmis YAYHBKmis YAYHITmis YAYHOMmis YAYJRDmis YAYROBmis YAYSCLmis YAYSHPmis YAYSKVmis YAYVNDmis YAYWEPmis YBYARSmis YBYBOPmis YBYBUSmis YBYCBKmis YBYGRFmis YBYHBKmis YBYHITmis YBYHOMmis YBYJRDmis YBYPETmis YBYROBmis YBYSCLmis YBYSHPmis YBYSKVmis YBYVNDmis YBYWEPmis YCYARSmis YCYBOPmis YCYBUSmis YCYCBKmis YCYDRGmis YCYGRFmis YCYHBKmis YCYHITmis YCYHOMmis YCYJRDmis YCYPETmis YCYRABmis YCYROBmis YCYSCLmis YCYSHPmis YCYSKVmis YCYVNDmis YCYWEPmis YDYARSmis YDYBOPmis YDYBUSmis YDYCBKmis YDYDRGmis YDYGRFmis YDYHBKmis YDYHITmis YDYHOMmis YDYJRDmis YDYPETmis YDYRABmis YDYROBmis YDYSCLmis YDYSHPmis YDYSKVmis YDYVNDmis YDYWEPmis YEYARSmis YEYBOPmis YEYBUSmis YEYCBKmis YEYDRGmis YEYGRFmis YEYHBKmis YEYHITmis YEYJRDmis YEYPETmis YEYRABmis YEYROBmis YEYRSTmis YEYSHPmis YEYSKVmis YEYVNDmis YEYWEPmis YFYARSmis YFYBFTmis YFYBOPmis YFYCBKmis YFYDRGmis YFYFRDmis YFYHBKmis YFYHITmis YFYJRDmis YFYPETmis YFYRABmis YFYROBmis YFYRSTmis YFYRSTmis YFYSHPmis YFYSKVmis YFYVNDmis YFYWEPmis; do over vars; if vars=. then miss=1; else miss=0; end; run; proc sort data=check; by caseid; proc sort data=&imp; by caseid; data check ; merge check &imp; by caseid; run; data check2; set check; array vars YAYARS02 YAYBOP02 YAYBUS02 YAYCBK02 YAYGRF02 YAYHBK02 YAYHIT02 YAYHOM02 YAYJRD02 YAYROB02 YAYSCL02 YAYSHP02 YAYSKV02 YAYVND02 YAYWEP02 YBYARS02 YBYBOP02 YBYBUS02 YBYCBK02 YBYGRF02 YBYHBK02 YBYHIT02 YBYHOM02 YBYJRD02 YBYPET02 YBYROB02 YBYSCL02 YBYSHP02 YBYSKV02 YBYVND02 YBYWEP02 YCYARS02 YCYBOP02 YCYBUS02 YCYCBK02 YCYDRG02 YCYGRF02 YCYHBK02 YCYHIT02 YCYHOM02 YCYJRD02 YCYPET02 YCYRAB02 YCYROB02 YCYSCL02 YCYSHP02 YCYSKV02 YCYVND02 YCYWEP02 YDYARS02 YDYBOP02 YDYBUS02 YDYCBK02 YDYDRG02 YDYGRF02 YDYHBK02 YDYHIT02 YDYHOM02 YDYJRD02 YDYPET02 YDYRAB02 YDYROB02 YDYSCL02 YDYSHP02 YDYSKV02 YDYVND02 YDYWEP02 YEYARS02 YEYBOP02 YEYBUS02 YEYCBK02 YEYDRG02 YEYGRF02 YEYHBK02 YEYHIT02 YEYJRD02 YEYPET02 YEYRAB02 YEYROB02 YEYRST02 YEYSHP02 YEYSKV02 YEYVND02 YEYWEP02 YFYARS02 YFYBFT02 YFYBOP02 YFYCBK02 YFYDRG02 YFYFRD02 YFYHBK02 YFYHIT02 YFYJRD02 YFYPET02 YFYRAB02 YFYROB02 YFYRST02 YFYRST22 YFYSHP02 YFYSKV02 YFYVND02 YFYWEP02; array miss YAYARSmis YAYBOPmis YAYBUSmis YAYCBKmis YAYGRFmis YAYHBKmis YAYHITmis YAYHOMmis YAYJRDmis YAYROBmis YAYSCLmis YAYSHPmis YAYSKVmis YAYVNDmis YAYWEPmis YBYARSmis YBYBOPmis YBYBUSmis YBYCBKmis YBYGRFmis YBYHBKmis YBYHITmis YBYHOMmis YBYJRDmis YBYPETmis YBYROBmis YBYSCLmis YBYSHPmis YBYSKVmis YBYVNDmis YBYWEPmis YCYARSmis YCYBOPmis YCYBUSmis YCYCBKmis YCYDRGmis YCYGRFmis YCYHBKmis YCYHITmis YCYHOMmis YCYJRDmis YCYPETmis YCYRABmis YCYROBmis YCYSCLmis YCYSHPmis YCYSKVmis YCYVNDmis YCYWEPmis YDYARSmis YDYBOPmis YDYBUSmis YDYCBKmis YDYDRGmis YDYGRFmis YDYHBKmis YDYHITmis YDYHOMmis YDYJRDmis YDYPETmis YDYRABmis YDYROBmis YDYSCLmis YDYSHPmis YDYSKVmis YDYVNDmis YDYWEPmis YEYARSmis YEYBOPmis YEYBUSmis YEYCBKmis YEYDRGmis YEYGRFmis YEYHBKmis YEYHITmis YEYJRDmis YEYPETmis YEYRABmis YEYROBmis YEYRSTmis YEYSHPmis YEYSKVmis YEYVNDmis YEYWEPmis YFYARSmis YFYBFTmis YFYBOPmis YFYCBKmis YFYDRGmis YFYFRDmis YFYHBKmis YFYHITmis YFYJRDmis YFYPETmis YFYRABmis YFYROBmis YFYRSTmis YFYRSTmis YFYSHPmis YFYSKVmis YFYVNDmis YFYWEPmis; keep var mis value ; attrib var length=$12.; do over vars; value=vars; call vname(vars,var); mis=miss; output; end; run; proc tabulate data =check2; class var mis value; table var*mis,(n*f=6.0 value*pctn*f=5.0); run; %mend; */