# SEMinR Lecture Series - Moderation Analysis

### SEMinR Lecture Series

This session is focused on how to perform moderation analysis using SEMinR in Cran R.

## Moderation Analysis

**Moderation**describes a situation in which the relationship between two constructs is not constant but depends on the values of a third variable, referred to as a**moderator variable**. The moderator variable (or construct) changes the strength, or even the direction of a relationship between two constructs in a model.- For example, research has shown that the relationship between Culture and Organizational Performance differs as a function of the Role Ambiguity.
- Moderating relationships are hypothesized a priori by the researcher. The testing of the moderating relationship depends on whether the researcher hypothesizes whether
*one*specific model relationship or whether*all*model relationships depend on the values of the moderator.

## Modelling Moderating Effects

- Figure illustrates the two-stage approach.
- The main effect model in Stage 1 is run to obtain the latent variable scores for
*Y*1,*Y*2, and*M*(i.e.,*LVS*(*Y*1),*LVS(Y*2*)*, and*LVS(M)*)*.* - The latent variable scores of
*Y*1 and*M*are then multiplied to form the single item used to measure the interaction term*Y*1 ·*M*in Stage 2. - The latent variables
*Y*1,*Y*2, and*M*are each measured with a single item of the latent variable scores from Stage 1. - It is important to note that the limitations identified when using single items do not apply in this case, since the single item represents the latent variable scores as obtained from a multi-item measurement in Stage 1.

## Model Evaluation

- For the interaction term, there is no requirement to assess its measurement model since it represents an auxiliary measurement that incorporates the interrelationships between the moderator and the exogenous construct in the path model.
- This characteristic, however, renders any measurement model assessment of the interaction term meaningless. In addition, standard measurement model evaluation standards would not apply since the interaction term is measured with a single item.
- Therefore, the interaction term does not necessarily have to be assessed in the measurement model evaluation step.
- Finally, it is always important to consider the standard criteria for structural model assessment. In the context of moderation, particular attention should be paid to the
*f*-Sq effect size of the interaction effect (Hair et al., 2022; Memon et al., 2018). - This criterion enables an assessment of the change in the R2 value when an exogenous construct is omitted from the model.
- With regard to the interaction effect, the
*f*2 effect size indicates how much the moderation contributes to the explanation of the endogenous construct. The effect size can be calculated as

- where R-Sq included and R-Sq excluded are the R-Sq values of the endogenous construct when the interaction term of the moderator model is included in or excluded from the PLS path model.
- In this way, one can assess the relevance of the moderating effect.
- General guidelines for assessing
*ƒ*2 suggest values of 0.02, 0.15, and 0.35 represent small, medium, and large effect sizes, respectively (Cohen, 1988). - However, Aguinis et al. (2005) have shown that the average effect size in tests of moderation is only 0.009.
- Against this background, Kenny (2018) proposes that 0.005, 0.01, and 0.025, respectively, constitute more realistic standards for small, medium, and large effect sizes of moderation but also points out that even these values are optimistic.

## Modelling Moderating Effects

- Creating interaction terms by hand can be time-consuming and error prone. SEMinR provides functions for simply creating interactions between constructs. In doing so, SEMinR adjusts the standard errors of the construct scores in the generation of the interaction term (Henseler & Chin, 2010).
- Interaction terms are described in the measurement model function
**constructs()**using the following methods: -
**two_stage**implements the two-stage approach. It specifies the interaction term as the product of the scores of the exogenous construct and the moderator variable. -
**product_indicator**generates the interaction term by multiplying each indicator of the exogenous construct with each indicator of the moderator variable. -
**orthogonal**is an extension of the product indicator approach, which generates an interaction term whose indicators do not share any variance with the indicators of the exogenous construct and the moderator. The orthogonalizing approach is typically used to handle multicollinearity in the structural model.

- Moderator variable is introduced through the interaction term in a PLS path model. But a fundamental question remains:
- How should the interaction term be operationalized? Research has proposed three primary approaches for creating the interaction term: (1) the product indicator approach, (2) the orthogonalizing approach, and (3) the two-stage approach.
- Simulation studies have shown that Chin, Marcolin, and Newsted’s (2003)
**two-stage approach**excels in terms of parameter recovery and statistical power (e.g., Becker, Ringle, & Sarstedt, 2018; Henseler & Chin, 2010). - In addition, this approach offers much flexibility, as it is the only approach that is applicable when the exogenous construct (
*Y*1) or the moderator (*M*) is specified formatively. We therefore recommend using the two-stage approach in most situations to create the interaction term.

Source: Ramayah et al (2018)

## Moderation Analysis Illustration

- In this example the impact of Collaborative Culture on Organizational Performance is moderated by Role Ambiguity. Role Ambiguity negative affect the strength of relationship between Collaborative Culture and Organizational Performance..
- Creating interaction terms by hand can be time-consuming and error prone. SEMinR provides functions for simply creating interactions between constructs. In doing so, SEMinR adjusts the standard errors of the construct scores in the generation of the interaction term (Henseler & Chin, 2010).
- The SEMinR syntax uses an asterisk (“*”) as a naming convention for the interaction construct. Thus, when creating an interaction from the constructs
*Collaborative Culture*and*Role Ambiguity*, the resulting interaction is called “Collaborative Culture*Role Ambiguity” in the structural model. **Therefore****it is recommended to refrain from using an asterisk in the naming of noninteraction constructs.**- In addition to including the moderator construct, we need to specify the interaction term composed of the independent variable
*Collaborative Culture*and the moderator Role Ambiguity using the**interaction_term****()**function. - The
**interaction_term****()**function takes the following arguments:*iv*specifies the independent variable (i.e., exogenous construct);*moderator*specifies the moderating variable; and*method*specifies the interaction calculation method (with values**product_indicator**,**orthogonal**, or**two_stage****)**. - We now need to choose the two-stage approach to create the interaction term. We specify the interaction term as follows:
**interaction_ term (***iv***= “Collaborative Culture”,***moderator***= “Role Ambiguity”,***method***=****two_stage****)**. - SEMinR automatically generates a name for the new interaction term by combining the exogenous construct’s and the moderator construct’s name separated by an asterisk (“*”), representing multiplication. Thus, the newly created interaction term will be called
. Note that SEMinR always standardizes the data when calculating the interaction term.*Collaborative Culture*Role Ambiguity*

```
library(seminr)
# Load the Data
datas <- read.csv(file = "D:\\YouTube Videos\\SEMinR\\Data.csv", header = TRUE, sep = ",")
head(datas)
# Create measurement model
simple_mm <- constructs(
composite("Role Ambiguity", multi_items("RA", 1:5)),
composite("Collaborative Culture", multi_items("CC", 1:6)),
composite("Organizational Performance", multi_items("OP", 1:5)),
interaction_term(iv = "Collaborative Culture", moderator = "Role Ambiguity", method = two_stage))
```

## Output

- When the measurement model has been updated with the identification of the Moderator and Interaction term. We need to add the new structural paths.
- There is a new path in the model: from Role Ambiguity to Organizational Performance
- The Interaction Effect (Collaborative Culture* Role Ambiguity) to Organizational Performance
- With the measurement and structural models now updated, the model can be estimated, bootstrapped, and summarized.

```
# Create structural model
simple_sm <- relationships(
paths(from = "Collaborative Culture", to = "Organizational Performance"),
paths(from = "Role Ambiguity", to = "Organizational Performance"),
paths(from = "Collaborative Culture*Role Ambiguity", to = "Organizational Performance"))
```

### F-Sq Effect Size Calculation

- R-Sq Excluded.
- In this example, RA is not a proper antecedent that affects Organizational Performance, and the objective is to assess the moderating role of RA. Hence, When calculating R-Sq excluded both the moderator and the moderating effect are removed from the model. Hence, the R-Sq excluded is comprised of the effect of Collaborative Culture on OP.
- Just in case, if RA was a proper antecedent of OP, then I would include it so that the f-sq just tells the effect size of the interaction. The f-sq term would then compare the R-sq of the additive terms plus interaction term
*versus*just the additive main terms.

- R-Sq Excluded = 0.324
- R-Sq Included = 0.381
- F-Sq = (0.381 – 0.324)/(1-0.381)
- F-Sq = 0.057/0.619
- F-Sq = 0.092
- Based on Kenny (2018) proposition, that 0.005, 0.01, and 0.025, respectively, constitute small, medium, and large effect sizes of moderation. There is a large effect size.
- As normal, the first step is to assess the measurement model. Assess and report the reliability and validity. As we have previously discussed in evaluating measurement model.
**NOTE: When assessing the Measurement Model, there is no need to create the interaction effect. Create your interaction effect for structural model assessment.**- The next concern is the size of the moderating effect. In order to evaluate the moderating effect, we need to inspect the
**bootstrapped_paths**element within the**summary_boot**object,**summary_boot$bootstrapped_paths**.

```
# Inspect the bootstrapped structural paths
summary_boot$bootstrapped_paths
```

### Slope Analysis

- As can be seen in the results, the interaction term (Collaborative Culture
**Role Ambiguity*) has a negative effect on*Orgnaizaitonal**Performance*of**−0.130**, whereas the simple effect of Collaborative Culture on Organizational Performance is**0.514**. - Jointly, these results suggest that the relationship between Collaborative Culture on Organizational Performance is
**0.514**for an average level of Role Ambiguity. - For higher levels of Role Ambiguity (i.e., for every standard deviation unit increase of Role Ambiguity), the relationship between Collaborative Culture and Organizational Performance decreases by the size of the interaction term (i.e., 0.514 + (−0.130) = 0.384).
- On the contrary, for lower levels of Role Ambiguity (i.e., for every standard deviation unit decrease of Role Ambiguity), the relationship between
*Collaborative Culture*and*Organizational Performance*increases the size of the interaction term (i.e., 0.514 − (−0.130) = 0.644). - To better comprehend the results of the moderator analysis, we can use the
**slope_analysis****()**function to visualize the two-way interaction effect. This function takes the arguments shown in Table.We apply the

**slope_analysis****()**function to the simple_model, with**Organizational Performance**as the endogenous construct,**Role Ambiguity**as the moderator construct, and Collaborative Culture as the exogenous construct. Finally, we assign the legend to the bottom-right corner of the plot.

The Slops

Slope Analysis Arguments

```
# Simple slope analysis plot
slope_analysis(moderated_model = simple_model,
dv = "Organizational Performance",
moderator = "Role Ambiguity",
iv = "Collaborative Culture",
leg_place = "bottomright")
```

## Video Tutorial - Step 1

## Complete Code

```
library(seminr)
# Load the Data
datas <- read.csv(file = "D:\\YouTube Videos\\SEMinR\\Data.csv", header = TRUE, sep = ",")
head(datas)
# Create measurement model
simple_mm <- constructs(
composite("Collaborative Culture", multi_items("CC", 1:6)),
composite("Role Ambiguity", multi_items("RA", 1:5)),
composite("Organizational Performance", multi_items("OP", 1:5)),
interaction_term(iv = "Collaborative Culture", moderator = "Role Ambiguity", method = two_stage))
# Create structural model
simple_sm <- relationships(paths (from = c("Collaborative Culture", "Role Ambiguity", "Collaborative Culture*Role Ambiguity"), to = "Organizational Performance"))
# Estimate the model
simple_model <- estimate_pls(data = datas, measurement_model = simple_mm, structural_model = simple_sm)
# Summarize the model results
summary_simple <- summary(simple_model)
# Bootstrap the model on the PLS Estimated Model
boot_model <- bootstrap_model(seminr_model = simple_model, nboot = 1000)
# Store the summary of the bootstrapped model, alpha sets the specified level for significance, i.e. 0.05
summary_boot <- summary(boot_model, alpha = 0.05)
# Inspect the bootstrapped structural paths
summary_boot$bootstrapped_paths
# Simple slope analysis plot
slope_analysis(moderated_model = simple_model, dv = "Organizational Performance", moderator = "Role Ambiguity", iv = "Collaborative Culture", leg_place = "bottomright")
```

## Reference

Hair Jr, J. F., Hult, G. T. M., Ringle, C. M., Sarstedt, M., Danks, N. P., & Ray, S. (2021). Partial Least Squares Structural Equation Modeling (PLS-SEM) Using R: A Workbook.

The tutorials on SEMinR are based on the mentioned book. The book is open source and available for download under this link.

## Additional SEMinR Tutorials

- An Introduction to R and R Studio
- An Introduction to SEMinR Package
- Create Project, Load, and Inspect the Data
- SEMinR Package: An Introduction to Evaluating Formative Measurement Model
- SEMinR Package: Analyzing Categorical Predictor Variables
- SEMinR Package: Bootstrapping PLS Model
- SEMinR Package: Evaluating Formative Measurement Model – Convergent Validity and Collinearity
- SEMinR Package: Evaluating Formative Measurement Model – Step 3- Indicator Weights
- SEMinR Package: Evaluating Formative Measurement Model – When to Delete Formative Indicators
- SEMinR Package: Evaluating Reflective Measurement Model
- SEMinR Package: Evaluating Structural Model
- SEMinR Package: Evaluating Structural Model – Step 4: Predictive Power (PLSPredict)
- SEMinR Package: Higher Order Analysis – REF-FOR
- SEMinR Package: Higher Order Analysis – REF-REF
- SEMinR Package: How to Solve Convergent and Discriminant Validity Problems
- SEMinR Package: Mediation Analysis
- SEMinR Package: PLS Estimation
- SEMinR Package: Print, Export and Plot Results
- SEMinR Package: Reflective Measurement Model Step 2: Consistency and Step 3: Convergent Validity
- SEMinR Package: Reflective Measurement Model Step 4: Discriminant Validity
- SEMinR Package: Single Item, SmartPLS Comparison and Summary of SEMinR
- SEMinR Package: Specifying Measurement Model
- SEMinR Package: Specifying the Structural Model