Question & Answer
Question
I have data written on paper, for example: value 1 has a freq. of 92 value 2 has a freq. of 134 value 3 has a freq. of 178 I would like to create a variable with values 1 to 3 and create 92 records/cases with value 1 for this variable, 143 records/cases for value 2, 178 records/cases for value 3. How can this be done quickly (via syntax) instead of having to enter all data manually?
Answer
Below is the following syntax that will show you how to do this. The syntax will creates an SPSS data file called MYDATA.SAV.
INPUT PROGRAM.
LOOP id=1 to 404.
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
EXECUTE.
IF (id le 92) var1=1.
IF (id ge 93 and id le 226) var1=2.
IF (id ge 227) var1=3.
EXECUTE.
INPUT PROGRAM.
LOOP v1 = 1 to 404.
COMPUTE v1 = 1.
If ($casenum > 92 & $casenum < 227) v1 = 2.
If ($casenum > 226) v1 = 3.
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
EXECUTE.
DATA LIST FREE /var freq.
BEGIN DATA
1 92 2 134 3 178
END DATA.
LOOP v = 1 TO freq.
XSAVE OUTFILE = 'mydata.sav' /KEEP var.
END LOOP.
EXECUTE.
GET FILE = 'mydata.sav'.
Related Information
Historical Number
25276
Was this topic helpful?
Document Information
More support for:
IBM SPSS Statistics
Software version:
Not Applicable
Operating system(s):
Linux, iOS, Windows
Document number:
418853
Modified date:
16 April 2020
UID
swg21477394