Chapter 4 Aggregating data: mean

4.1 Intro

A common task is aggregating multiple variables (columns in a dataset) into one new variable (column). For example, you may want to compute the average score on the items of a questionnaire.

Note that when creating new variable names, it is important to follow the convention for variable names (see section (software-basics-file-and-variable-name-conventions)).

4.1.1 Example dataset

This example uses the Rosetta Stats example dataset “pp15” (see Chapter 1 for information about the datasets and Chapter 3 for an explanation of how to load datasets).

4.1.2 Variable(s)

From this dataset, this example uses variables highDose_AttGeneral_good, highDose_AttGeneral_prettig, highDose_AttGeneral_slim, highDose_AttGeneral_gezond & highDose_AttGeneral_spannend.

We will aggregate these into the variable highDose_attitude (note that this variable already exists in the dataset, and that existing variable is also the mean of those five variables).

4.2 Input: jamovi

In the “Data” tab, click the “Compute” button as shown in Figure 4.1.

Aggregating in jamovi: opening Compute menu

Figure 4.1: Aggregating in jamovi: opening Compute menu

Type in the new variable name in the text field at the top, labelled “COMPUTED VARIABLE”. Then click the function button, marked \(f_x\), select the MEAN function from the box labelled “Functions”, and double click all variables for which you want the mean in the box labelled “Variables”, while typing a comma in between each variable name as shown in Figure 4.1.

Aggregating in jamovi: using the function menu to specify a computation

Figure 4.2: Aggregating in jamovi: using the function menu to specify a computation

Alternatively, you can type the function name and list of variables directly without using the function (\(f_x\)) dialog as shown in Figure 4.2.

Aggregating in jamovi: directly typing in a computation

Figure 4.3: Aggregating in jamovi: directly typing in a computation

4.3 Input: R

4.3.1 Base R

dat$highdose_attitude <-
  rowMeans(
    dat[,
      c(
        'highDose_AttGeneral_good',
        'highDose_AttGeneral_prettig',
        'highDose_AttGeneral_slim',
        'highDose_AttGeneral_gezond',
        'highDose_AttGeneral_spannend'
      )
    ]
  );

4.3.2 Rosetta

dat$highdose_attitude <-
  rosetta::means(
    data = dat,
    'highDose_AttGeneral_good',
    'highDose_AttGeneral_prettig',
    'highDose_AttGeneral_slim',
    'highDose_AttGeneral_gezond',
    'highDose_AttGeneral_spannend'
  );

4.4 Input: SPSS GUI

First activate the dat dataset (see 2.4.1).

A screenshot placeholder

Figure 4.4: A screenshot placeholder

4.5 Input: SPSS Syntax

COMPUTE highdose_attitude =
  MEAN(
    highDose_AttGeneral_good,
    highDose_AttGeneral_prettig,
    highDose_AttGeneral_slim,
    highDose_AttGeneral_gezond,
    highDose_AttGeneral_spannend
  ).

4.6 Output

Aggregating variables is not an analysis, and as such, does not produce output. You can inspect the newly created variable to ensure it has been created properly.