*Stacker Macro; *Laura A. Higgins 18 May 2005; *This macro takes 2 chips that are in a side by side format and makes a file that is the stacked version; %macro Stacker(data_in, chip, replicate, treatment, time, chip_det, chip_sig); data subset_&chip; set &data_in; dummy = 1; keep gene_number percent_off always_off &chip_det &chip_sig off_&chip quartile_&chip dummy; run; data subset2_&chip; set subset_&chip; rename percent_off = percent_off &chip_det = PMA &chip_sig = Signal off_&chip = Offs quartile_&chip = Quartile; run; data chiptreatment_&chip; set &data_in; dummy=1; chip = "&chip"; replicate = "&replicate"; treatment = "&treatment"; time = "&time"; rep_treat = "&replicate"||"&treatment"; rep_time = "&replicate"||"&time"; treat_time = "&treatment"||"&time"; rep_treat_time = "&replicate"||"&treatment"||"&time"; keep dummy chip replicate treatment time rep_treat rep_time treat_time rep_treat_time ; run; data subset3_&chip; merge chiptreatment_&chip subset2_&chip; by dummy; drop dummy; run; data stack_er_up; set stack_er_up subset3_&chip; run; %mend Stacker;