You do not need the output/call missing in this case. I was thinking of the case when you are merging by variables and have different number of observations per BY group. In that case SAS will retain the value of the last member of the group from the dataset that has fewer observations. Check out the difference in this example with a BY variable when you run it with or without the output and call missing statements. data one ; set sashelp.class nobs=nobs; i = int(3*_n_/nobs); run; data two ; set sashelp.citiyr nobs=nobs; i = int(3*_n_/nobs); run; data want ; merge one two ; by i; output; call missing(of _all_); run;
... View more