- One of the main flexibilities with a statistical package like
SPSS (besides being able to conduct statistical analyses and
obtain tabular and graphical output) is the capacity for
- One important data manipulation is the creation of new
variables, which are some mathematical function of other
- Psychological research often involves measuring fuzzy
constructs, such as personality traits, by gathering responses to
multiple items (such as questions in a survey) which are combined
to provide a (hopefully) reliable and valid measure of a broader
construct (such as extraversion).
- These "composite scores" can be:
- Unit-weighted, with the data from each item being equally
weighted (by either adding all items together or calculating the
average of each item), or
- Regression-weighted, e.g., from a factor analysis (not
Via pull-down menus
- Make sure you have the data file open, then go to Data View (.sav)
- Enter new variable name in "Target Variable"
- Enter formula for creating composite score in "Numeric
To compute the score, click OK.
Scroll to the right-hand side of the data file (in Data
View) and you should see a new column.
If the the new variable doesn't have any data, try
saving your data file (which executes any pending calculations).
If data appears, then its a good idea to run
frequencies, descriptives, and/or an appropriate graph to check whether
you have the kind of data you intended to create.
An easy way to create the syntax commands is to follow
the instructions above, but on the last step, click Paste instead of OK.
The syntax can then be conveniently copied and edited -
this is especially useful if you have many composite scores to
It also allows the
syntax commands to be saved (.sps) and recalled for later use.
compute satistotl = satis+satis2+satis3+satis4+satis5.
compute satismean = mean(satis1,satis2,satis3,satis4,satis5).
Allow for missing values
You can allow for missing values by adding ".X" after
"mean", where X is the minimum number of variables that need
to have data for a case in order to calculate a mean.
For example, this syntax will
calculate a satis score for a case as long as it has at least 3 values
of the variables listed:
compute satismean = mean.3(satis1,satis2,satis3,satis4,satis5).
If a case has data for less than three of the variables, satis
will be system missing (.).
Otherwise, a mean will be created using data from all