Use an SPSS Macro to Open and Save Hundreds /Thousands of similar Files

SPSS macro to open and save

Using an SPSS Macro to Open and Save files can be quite a time saver!  In my example code & video I demonstrate how to adapt basic SPSS syntax into a macro that automates the process.   I also mention this macro which takes the reverse approach (automatically breaks the file into random groups).

The below code it just an example using SPSS macro to open and save text files which will have to be adapted to your needs.  Be sure to pay close attention to string variables and the widths you set them at.  Generally speaking, set them at double what SPSS assigns them.  In reality, there doesn’t seem to be any file-size change when you make them very wide so you also might just default to setting the width to 10X the width (then shrink the column widths with the Var Width command.

In the video I also demonstrate how I used Excel to help write my syntax for looping over all the files as well as merging the files together.

SPSS macro to open and save Text files

 
*///////////////.
DEFINE !OpenSav (In_Path !TOKENS (1) /Out_Path !TOKENS (1) / File_Name !TOKENS (1) )
 script "B:\SPSS\Scripts\Empty.sbs".
 
GET DATA  /TYPE=TXT  /FILE=!In_Path + !File_Name + ".txt"
 /DELCASE=LINE  /DELIMITERS="\t"  /QUALIFIER='"'  /ARRANGEMENT=DELIMITED  /FIRSTCASE=2  /IMPORTCASE=ALL  /VARIABLES=
 Company A120
 City A30
 State F3.0
 Sales_Rev F11.0
 Num_Emp F6.0.
DATASET NAME $DataSet WINDOW=FRONT.
Var width All (5) company city (10) .
SAVE OUTFILE=!Out_Path + !File_Name + ".sav"  /COMPRESSED.
!ENDDEFINE.
*///////////////.
!OpenSav In_Path="H:\temp\Files\"  Out_Path="H:\temp\Out\"    File_Name="Rand_1".

Video demonstrating using an SPSS macro to open and save files

Comments are closed.