ADP (R)

매개효과분석

멋쟁이천재사자 2022. 8. 6. 12:43

 

 

출처 : https://youtu.be/2PamBrMhJ1Y

 

 

str(mtcars)

# 1단계
model.total <- lm(mpg ~ disp, data=mtcars)
summary(model.total)
# 독립변수의 총효과는 -0.041215

# 2단계 : 유의한지 확인
model.M <- lm(wt ~ disp, data=mtcars)
summary(model.M)

# 3단계 : 배기량과 무게는 완전 매개??
model.Y <- lm(mpg ~ disp + wt, data=mtcars)
summary(model.Y)

 

 

 

 

#배기량과 연비의 간접효과 크기는
0.0070103 * -3.35082 

#간접 효과의 통계적인 검정 (Sobel검정 또는 bootstrap)
#Sobel 검정 (정규분포 & 표본크기가 충분히 거야함 전제)

library(multilevel)

model.sob <- sobel(pred=mtcars$disp, med=mtcars$wt, out=mtcars$mpg)

pnorm(abs(model.sob$z.value),lower.tail=FALSE)
pnorm(abs(model.sob$z.value),lower.tail=FALSE) * 2


library(bda)      
mediation.test(mv=mtcars$wt, iv=mtcars$disp, dv=mtcars$mpg)      


# bootstrap
library(mediation)
#매개변수 모델
model.M <- lm(wt~ disp, data= mtcars)
# 독립변수 모델 / 종속변수 모델?
model.Y <- lm(mpg~ disp + wt, data= mtcars)

set.seed(123)
model.mediation <-mediate(model.m = model.M,
                          model.y = model.Y,
                          treat = "disp",
                          mediator = "wt",
                          boot=TRUE, sims=500)


summary(model.mediation)
plot(model.mediation, cex=1.2, col="royalblue", lwd=2, main="Mediation Effect Analysis")