library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.0 ──
## ✓ ggplot2 3.3.3     ✓ purrr   0.3.4
## ✓ tibble  3.1.0     ✓ dplyr   1.0.5
## ✓ tidyr   1.1.3     ✓ stringr 1.4.0
## ✓ readr   1.4.0     ✓ forcats 0.5.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(here)
## here() starts at /cloud/project
library(performance)
library(lme4)
## Loading required package: Matrix
## 
## Attaching package: 'Matrix'
## The following objects are masked from 'package:tidyr':
## 
##     expand, pack, unpack
library(glmmTMB)
library(see)
library(ggrepel)
library(qqplotr)
## 
## Attaching package: 'qqplotr'
## The following objects are masked from 'package:ggplot2':
## 
##     stat_qq_line, StatQqLine
ElviaModel <- 
  "convergente =~ i1 + i2 + i3 + i4
   divergente =~ i5 + i6 + i7 +i8
   acomodador =~ i9 + i10 + i11 + i12
   asimilador =~ i13 + i14 + i15 + i16
   rend_ac =~ i17
   rend_ac =~ convergente + divergente + acomodador + asimilador"

Adquiriendo los datos

elvia_raw <- 
  read_csv(here("SEM lavaan/data_sem", 
                "elvia_1.csv"))
## 
## ── Column specification ────────────────────────────────────────────────────────
## cols(
##   i1 = col_double(),
##   i2 = col_double(),
##   i3 = col_double(),
##   i4 = col_double(),
##   i5 = col_double(),
##   i6 = col_double(),
##   i7 = col_double(),
##   i8 = col_double(),
##   i9 = col_double(),
##   i10 = col_double(),
##   i11 = col_double(),
##   i12 = col_double(),
##   i13 = col_double(),
##   i14 = col_double(),
##   i15 = col_double(),
##   i16 = col_double(),
##   i17 = col_double()
## )

Organizando los datos

elvia_LM <- 
  elvia_raw %>% 
  rowwise() %>% 
  mutate(convergente = mean(c(i1, i2, i3, i4)),
         divergente = mean(c(i5, i6, i7, i8)),
         acomodador = mean(c(i9, i10, i11, i12)),
         asimilador = mean(c(i13, i14, i15, i16)),
         rend_aca = i17) %>% 
  select(rend_aca, convergente, divergente, acomodador, asimilador)

head(elvia_LM)

Análisis descriptivo

elvia_LM %>%
  keep(is.numeric) %>% 
  gather() %>% 
  ggplot(aes(value)) +
  facet_wrap(~ key, scales = "free") +
  geom_histogram()
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

Análisis inferencial

Modelo de regresión lineal múltiple

Construimos el modelo

elvia_model_LM <- 
  lm(rend_aca ~ convergente + divergente + acomodador + asimilador, 
     data = elvia_LM)

Revisamos el modelo

summary(elvia_model_LM)
## 
## Call:
## lm(formula = rend_aca ~ convergente + divergente + acomodador + 
##     asimilador, data = elvia_LM)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.94359 -0.41972  0.02011  0.40613  2.05454 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  0.16946    0.12153   1.394    0.163    
## convergente  0.13760    0.03341   4.118 4.10e-05 ***
## divergente   0.23722    0.03669   6.465 1.53e-10 ***
## acomodador   0.20770    0.03516   5.907 4.64e-09 ***
## asimilador   0.28059    0.03331   8.423  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.644 on 1095 degrees of freedom
## Multiple R-squared:  0.3151, Adjusted R-squared:  0.3126 
## F-statistic:   126 on 4 and 1095 DF,  p-value: < 2.2e-16

Que por cada unidad incrementada en asimilador el desempeño aumentará en un 2.40 unidades.

check_model(elvia_model_LM)