*******************************************************************************; ** SAS macro MR2RM vs. 2.7.3l, 11 Jun 2007, by Jim Groeneveld, Netherlands *; *******************************************************************************; ** *; *; %MACRO MR2RM /* Conversion of Multiple Records To Repeated Measures */ %* *; %* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*; %* *; %* History of MR2RM (since vs. 2.7.3i): *; %* ==================== *; %* version date description of changes, additions, improvements *; %* ------- ----------- ---------------------------------------------------- *; %* 2.7.3j 21 Mar 2006 SAS names part for vs 9 set equal to vs 8 (for now) *; %* 2.7.3k 10 May 2006 several parameter name changes (aka proc TRANSPOSE) *; %* - changed parameter name SourceDs into Data , *; %* - changed parameter name TargetDs into Out , *; %* - changed parameter name IDlist into ByList , *; %* - changed parameter name IDformat into ByFormat, *; %* - changed parameter name MRlist into VarList , *; %* - changed parameter name KeepList into CopyList, *; %* - changed parameter name KeepFrom into CopyFrom, *; %* (old names yet supported until some future version), *; %* added QUIT after RUN with PROC DATASETS, *; %* changed tests on &ByFormat to search for whole word, *; %* added support for all 28 missing Index values, which *; %* generate unique RM variables for each of them, *; %* added WHERE argument to add a complete WHERE clause *; %* 2.7.3l 11 Jun 2007 prevented defining formats of only a $ character, *; %* corrected buggy WHERE argument (with PROC CONTENTS) *; %* *; %******************************************************************************; Note on the download and application of macro MR2RM vs. 2.7.3l =================================================== In order to use the macro MR2RM.sas (in MR2RM.zip) you also have to download the auxiliary macros - ChkVar.sas (in ChkVar.zip) - PreZeros.sas (in PreZeros.zip) - FirstCh.sas (in FirstCh.zip) - ChkList.sas (in ChkList.zip) - CrossChk.sas (in CrossChk.zip) and make them available in your macro search path just like your other SAS macros or explicitly %include them in your SAS macro code. They are being automatically called from MR2RM.sas . MR2RM.sas (C) Jim Groeneveld.