*The easiest way is to define your new variable with data list and then add your old file to it. It would look like this: DATA LIST /NEWVAR 1. BEGIN DATA 1 END DATA. ADD FILES FILE=* /FILE=OLDFILE. ********************************************************************. * var1 (a unique id variable) has gaps in it (1 2 3 . 5 6 . 8 . 10 11); values 4,7,9,and 12 are missing. * Task is to fill the gaps. * rlevesque@videotron.ca. data list free / var1 dummy. begin data 1 8 2 22 3 7 5 7 6 7 8 7 10 7 11 7 end data . DO IF $casenum=1. + LOOP varx=1 TO 12. + XSAVE OUTFILE='temp.sav' /KEEP=varx. + END LOOP. END IF. EXECUTE. MATCH FILES FILE=* /DROP=varx. MATCH FILES FILE=* /FILE='temp.sav' /RENAME= (varx=var1) /BY var1. EXECUTE.