ÎncepețiÎncepe gratuit

Intercepte cu efecte aleatoare

Modelele liniare în R estimează parametri considerați ficși sau non-aleatori, numiți efecte fixe. În schimb, parametrii cu efect aleator presupun că datele împart o distribuție comună a erorilor și pot produce estimări diferite atunci când există cantități mici de date sau valori extreme. Modelele cu atât efecte fixe, cât și aleatoare sunt numite modele cu efecte mixte sau regresie liniară cu efecte mixte.

Pachetul lme4 ajustează modele cu efecte mixte (modele cu atât efecte fixe, cât și aleatoare) folosind funcția lmer(), care utilizează o formulă similară cu lm(). Totuși, interceptele cu efect aleator folosesc o sintaxă specială:

lmer(y ~ x + (1 | random-effect), data = my_data)

Funcția lmer() necesită ca modelul să includă un efect aleator, altfel generează o eroare. Aici vei ajusta un model lm() și un model lmer(), apoi vei compara grafic modelele ajustate folosind un subset de date. Furnizăm acest cod din cauza prelucrării avansate a datelor, necesară deoarece efectele aleatoare nu sunt de obicei reprezentate grafic (ggplot2 nu include opțiuni de reprezentare dedicate pentru modelele cu efecte mixte). În acest grafic, observă cum liniile punctate din pantele cu efect aleator se compară cu liniile continue din pantele cu efect fix.

Notă: broom.mixed este necesar deoarece pachetul broom nu acceptă lme4.

Acest exercițiu face parte din cursul

Modele ierarhice și cu efecte mixte în R

Vezi cursul

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Build a liner model including class as fixed-effect model
lm_out <- ___

# Build a mixed-effect model including class id as a random-effect
lmer_out <- lmer(___ ~ ___ + (1 | ___), data = ___)

# Extract out the slope estimate for mathkind
tidy(lm_out) %>%
    filter(term == "mathkind")
    
tidy(lmer_out) %>%
    filter(term == "mathkind")
Editează și rulează codul