---
title: "Bootstrapping u okviru medijacionog modela"
output: 
  html_document:
    toc: true
    toc_float: 
      collapsed: false
    toc_depth: 3
    code_folding: hide
    theme: simplex
    highlight: tango
    df_print: kable
date: "`r Sys.Date()`"
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

Za ilustraciju upotrebe bootstrap intervala poverenja u medijacionim modelima, ovde ćemo prikazati kako se testiraju medijacioni modeli iz članka:   
Lazarević, Lj., Purić, D., Teovanović, P., Lukić, P., Zupan, Z. & Knežević G. (2021). What drives us to be (ir)responsible for our health during the COVID-19 pandemic? The role of personality, thinking styles, and conspiracy mentality. Personality and Individual Differences, 176, https://doi.org/10.1016/j.paid.2021.110771.  
Članak se može pročitati na: https://www.sciencedirect.com/science/article/pii/S019188692100146X?via%3Dihub


# Pripremne aktivnosti
### Učitavanje potrebnih paketa
haven nam je potreban da lako učitamo spss fajl   
lavaan je potreban za testiranje medijacionog modela   
semPlot ćemo koristiti da nacrtamo model
```{r loading packages, warning=FALSE, message=FALSE}
library(haven)
library(lavaan)
library(semPlot)
```

### Učitavanje fajla sa podacima
Podaci se mogu naći na OSF stranici istraživanja: https://osf.io/9njp3/   
Ovde koristimo Database_Serbian_transformed (fajl je samo preimenovan za vežbe)
```{r loading data}
setwd(dirname(rstudioapi::getActiveDocumentContext()$path))
dat <- read_sav("mediation_delta_PSP.sav")
```

### Postavljanje random seed-a
Ovo je važno kako bismo dobili reproducibilne rezultate (svaki put kada pokrenemo analizu, bilo mi, bilo neko drugi)
```{r set seed}
set.seed(1234)
```

# Medijacioni model

### Postavljanje medijacionog modela
Ovaj model je pojednostavljena verzija u odnosu na onu iz članka zato što nisu uključeni kovarijati (rezultati se ne menjaju dramatično)  
Model iz članka dostupan je isto na OSF stranici istraživanja: https://osf.io/9njp3/  
Varijabla CAM_bin se odnosi na primenu pseudo-naučnih praksi (pseudo-scientific practices PSP)  
DELTA je dezintegracija   
NFC je Need for cognition, odnosno racionalni stil razmišljanja   
FI je Faith in intuition, odnosno intuitivni stil razmišljanja   
CMQ je Conspiracy Mentality Questionnaire, odnosno zavereničko mišljenje  

```{r mediation model, warning=FALSE}
DELTA_PSP <- '
  CAM_bin ~ c * DELTA + b1 * NFC + b2 * FI + b3 * CMQ
  NFC ~ a1 * DELTA
  FI ~ a2 * DELTA
  CMQ ~ a3 * DELTA
  indirect1 := a1*b1
  indirect2 := a2*b2
  indirect3 := a3*b3
  direct := c
  total := c + (a1*b1) + (a2*b2) + (a3*b3) 
  NFC ~~ FI + CMQ
  FI ~~ CMQ
'

fit_DELTA_PSP <- sem(DELTA_PSP, 
                     data = dat,
                     se = "bootstrap")
```

### Rezultati medijacionog modela

```{r mediation model results}
summary(fit_DELTA_PSP, 
        rsquare=TRUE, 
        standardized = TRUE, 
        fit.measures = TRUE)

parameterEstimates(fit_DELTA_PSP, standardized = TRUE)
```


### Plot modela

```{r mediation model plot}
semPaths(fit_DELTA_PSP, what = "path", whatLabels = "std", layout = "spring",  sizeMan = 8, edge.label.cex = 1)
```