The SAS Output Delivery System and reporting techniques

Proc Compare

Reply
N/A
Posts: 0

Proc Compare

I am comparing two datasets that have the same variables. The variables are "id", "insdate" & "ins" for the two insurance tables. The compare works great but I want the ouptut to show which "id" has the issue. Currently the output only shows which "OBS" (record number). There are multiple records in the datasets, therefore 'id" variable is not unique. Here's my code:

*compare datasets;
%macro compare (a,b);
proc compare base=&a compare=&b;
run;
%mend compare;

%compare (hpv1_insurance,hpv2_insurance);
%compare (hpv1_papsmear,hpv2_papsmear);
run;

Thanks,
Wal
SAS Employee
Posts: 5

Re: Proc Compare

Posted in reply to deleted_user
Try with the option 'outall'

Example:

*compare datasets;
%macro compare (a,b,c);
proc compare base=&a compare=&b out=&c outall noprint;
run;
proc print data=&c;
title 'An OUT= Data Set';
run;
%mend compare;

%compare (hpv1_insurance,hpv2_insurance,tempout1);
%compare (hpv1_papsmear,hpv2_papsmear,tempout2);
run;
N/A
Posts: 0

Re: Proc Compare

Posted in reply to Anitha_SAS
Thanks for the input. I ended up writing the below code before I saw your comment and it worked fairly well. It gave me a printout of only observations with errors. If I need a dataset your code would be the choice. Thanks again.

%macro compare (a,b,c);
proc compare base=&a compare=&b nosummary;
by id;
run;
%mend compare;

%compare (hpv1_insurance,hpv2_insurance);
%compare (hpv1_papsmear,hpv2_papsmear);
run;
Ask a Question
Discussion stats
  • 2 replies
  • 161 views
  • 0 likes
  • 2 in conversation