SPSS TUTORIALS BASICS ANOVA REGRESSION FACTOR CORRELATION

# Concatenate (General Concept)

Concatenating two or more strings is creating a new string consisting of the characters of the first string followed by the characters of the subsequent string(s) in their original order.

## SPSS CONCAT Function

• Concatenating in SPSS is done by the `CONCAT` function.
• The most basic usage is `COMPUTE A = CONCAT(B,C,D)`.
• Note that you can concatenate only strings. For concatenating numbers, first convert them to strings, for example by using the stringfunction.
• Note that you may sometimes need RTRIM within `CONCAT` as demonstrated by the syntax below.

## SPSS Concatenate Syntax Example

*1. Create single case test data.

data list free/first_name(a5) last_name(a5) cars.
begin data
'John' 'Doe' 2
'Chris' 'Colt' 1
end data.

*2. Concatenate first and last name.

string full_name(a10).
compute full_name = concat(rtrim(first_name),' ',rtrim(last_name)).
exe.

*3. Convert cars to string and concatenate into sentence.

string has_cars (a25).
compute has_cars = concat(rtrim(full_name),' has ',string(cars,f1),' cars.').
exe.

*4. Correct plural if needed.

if cars eq 1 has_cars = replace(has_cars,'cars','car').
exe.
SPSS Concatenation Result

## Concatenating in Python

• In Python, the `+` operator is used for concatenating.
• As in SPSS, you can only concatenate strings, not numbers in Python. Convert numbers into strings before concatenating them.

## Python Concatenate Example

* Concatenate strings and number into sentence.

begin program.
firstName = "John"
lastName = "Doe"
cars = 2
sentence = firstName + ' ' + lastName + ' has ' + str(cars) + ' cars.'
print sentence
end program.

# Tell us what you think!

*Required field. Your comment will show up after approval from a moderator.

# THIS TUTORIAL HAS 6 COMMENTS:

• ### By Ruben Geert van den Berg on December 4th, 2020

Hi Zachary, good question!

Use the VALUELABEL function.

So if you've 2 variables, v1 and v2, first create a new string variable with

STRING s1 (A1000).

or something. Then try

COMPUTE s1 = CONCAT(VALUELABEL(v1),' ',VALUELABEL(v2)).

FREQUENCIES s1.

Last, you can reduce the length of the new string variable with ALTER TYPE:

ALTER TYPE s1 (AMIN).

and finally, add a variable label to it:

VARIABLE LABELS s1 'Combination of v1 and v2'.

Hope that helps!

SPSS tutorials