Sosyal bilimlerde değişkenler arasındaki ilişkileri yalnızca “var mı, yok mu” düzeyinde sorgulamak çoğu zaman yeterli olmaz. Araştırmacılar giderek daha karmaşık sorular sormaya başlamıştır. Bu etki nasıl işliyor? Hangi mekanizma üzerinden aktarılıyor?
Yol analizi, birden fazla değişken arasındaki nedensel ilişkilerin aynı anda test edilmesine olanak tanıyan çok değişkenli bir istatistiksel tekniktir. Temelde regresyon analizinin genişletilmiş bir biçimi olan yol analizi; bağımsız, bağımlı ve aracı değişkenler arasındaki doğrudan ve dolaylı etkileri tek bir model çerçevesinde ele alır. Her ilişki bir “yol katsayısı” ile temsil edilir ve bu katsayılar söz konusu ilişkinin yönünü ve büyüklüğünü gösterir. Yol analizi, araştırmacının kuramsal olarak önerdiği nedensel yapıyı veriyle sınamasına imkân tanıdığı için doğrulayıcı bir nitelik taşır.
Aracılık etkisi, bir bağımsız değişkenin bağımlı değişken üzerindeki etkisinin en az bir üçüncü değişken (aracı değişken (M)) üzerinden işlediğini öne süren bir modeldir. Başka bir deyişle aracılık analizi, “X, Y’yi etkiliyor” gözleminin ötesine geçerek “X, Y’yi neden ve nasıl etkiliyor?” sorusunu yanıtlamaya çalışır. Aracı değişken, bağımsız değişkenden etkilenen ve aynı zamanda bağımlı değişkeni etkileyen bir köprü konumundadır. Aracılık etkisi tam ya da kısmi olabilir. Bu ayrım, bağımsız değişkenin bağımlı değişken üzerindeki doğrudan etkisinin aracı kontrol edildiğinde ne ölçüde azaldığına göre belirlenir.
Doğrudan etki, aracı değişken modele dahil edildiğinde bağımsız değişkenin (X) bağımlı değişken (Y) üzerinde kalan etkisidir. Yani X’in Y’yi aracı üzerinden geçmeksizin doğrudan etkileme gücünü ifade eder. Yol diyagramlarında X’ten Y’ye çizilen ve M’yi atlayarak geçen ok ile gösterilir. Aracılık etkisi güçlendikçe doğrudan etki küçülür; tam aracılık durumunda ise sıfıra yaklaşır.
Dolaylı etki, bağımsız değişkenin (X) bağımlı değişken (Y) üzerindeki etkisinin aracı değişken (M) üzerinden aktarılan kısmıdır. Matematiksel olarak a × b çarpımı ile hesaplanır: a yolu X’in M’yi etkileme gücünü, b yolu ise M’nin Y’yi etkileme gücünü gösterir. Dolaylı etkinin anlamlılığı Sobel testi ya da örnekleme yeniden örnekleme (bootstrap) yöntemiyle sınanır; küçük örneklemlerde normallik varsayımına dayanmayan bootstrap yaklaşımı tercih edilir.
Toplam etki, bağımsız değişkenin (X) bağımlı değişken (Y) üzerindeki doğrudan ve dolaylı etkilerinin toplamıdır: c = c’ + ab. Aracı değişken modele eklenmeden önce kurulan sade regresyonda elde edilen katsayı (c yolu) toplam etkiyi verir. Toplam etkinin bileşenlerine ayrıştırılması, bir ilişkinin ne kadarının doğrudan, ne kadarının ise aracı mekanizma üzerinden işlediğini görünür kılar ve araştırmanın kuramsal açıklamasını güçlendirir.
Gerekli kütüphanelerin çağrılması:
Veri seti TIMSS 2023 öğrenci veri setinden elde edilmiştir. Yol analizi ve aracılık etkisi analizleri için öğrenci verilerinden elde edilen iki ayrı veri seti ile çalışılmıştır.
Birinci veri seti (ogrenci.sav) üç değişkenden oluşmaktadır: matematik kolaylığına ilişkin tutum (BSBM22D-bağımsız değişken), matematiği sevme (BSBM19E-aracı değişken) ve matematik başarı puanı (BSMMAT01-bağımlı değişken). İkinci veri seti (veri.sav) ise özgüven (OZGUVEN1), matematiği sevme (SEVME1), değer (DEGER1) ve matematik puanı (MAT01) değişkenlerini içermekte olup yol analizi için kullanılmıştır. Kuramsal olarak matematik başarısının, öğrencinin derse yönelik tutumunu şekillendirdiği ve bu tutumun da değer algısına zemin hazırladığı varsayılmaktadır.
library(haven)
ogrenci <- read_sav("ogrenci.sav")
ogrenci <- expss::drop_var_labs(ogrenci)
head(ogrenci)## # A tibble: 6 × 3
## BSBM19E BSBM22D BSMMAT01
## <dbl> <dbl> <dbl>
## 1 1 1 311.
## 2 4 3 400.
## 3 3 4 517.
## 4 4 3 344.
## 5 1 3 479.
## 6 4 4 383.
Kayıp Veri
## [1] TRUE
## [1] 384
## [1] 0.02598985
## # A tibble: 3 × 3
## variable n_miss pct_miss
## <chr> <int> <num>
## 1 BSBM22D 194 3.94
## 2 BSBM19E 190 3.86
## 3 BSMMAT01 0 0
## # A tibble: 4,660 × 3
## BSBM19E BSBM22D BSMMAT01
## <dbl+lbl> <dbl+lbl> <dbl+lbl>
## 1 1 [Agree a lot] 1 [Agree a lot] 311.
## 2 4 [Disagree a lot] 3 [Disagree a little] 400.
## 3 3 [Disagree a little] 4 [Disagree a lot] 517.
## 4 4 [Disagree a lot] 3 [Disagree a little] 344.
## 5 1 [Agree a lot] 3 [Disagree a little] 479.
## 6 4 [Disagree a lot] 4 [Disagree a lot] 383.
## 7 1 [Agree a lot] 1 [Agree a lot] 429.
## 8 1 [Agree a lot] 2 [Agree a little] 459.
## 9 1 [Agree a lot] 2 [Agree a little] 537.
## 10 2 [Agree a little] 3 [Disagree a little] 479.
## # ℹ 4,650 more rows
Veri setinde BSBM22D değişkeninde %3.94, BSBM19E değişkeninde ise %3.86 oranında kayıp veri tespit edilmiştir. BSMMAT01 değişkeninde kayıp veri bulunmamaktadır. Kayıp veri oranları %5’in altında kaldığından liste bazlı silme (na.omit) yöntemi uygulanmış ve analizler 4.660 gözlem üzerinden yürütülmüştür.
Durbin-Watson testi ile hata terimlerinin ilişkisiz olduğu belirlenebilir.
## lag Autocorrelation D-W Statistic p-value
## 1 0.2994299 1.399587 0
## Alternative hypothesis: rho != 0
Durbin-Watson test istatistiği 1.40 olarak hesaplanmıştır. Bu değer kabul edilebilir sınır olan 1.5’in biraz altında kalmaktadır.
Doğrusallık:
Artıklar vs. Tahmin Grafiği incelendiğinde kırmızı çizginin yataya yakın seyrettiği görülmektedir. Bununla birlikte, değişkenlerin Likert ölçeğinden elde edilmiş olması nedeniyle tahmin değerlerinin süreksiz bantlar halinde kümelendiği dikkat çekmektedir. Bu durum verinin yapısından kaynaklanmakta olup doğrusallık varsayımı genel olarak karşılanmaktadır.
Uç Değerler:
Kutu grafikleri incelendiğinde matematik başarı puanında (BSMMAT01) tek bir uç değer gözlemlenmiş, diğer değişkenlerde uç değere rastlanmamıştır. Mahalanobis uzaklığı hesaplamasında ise çok değişkenli uç değer bulunmamıştır (integer(0)). Z puanı incelemesinde kayıp veriler nedeniyle BSBM19E ve BSBM22D için hesaplama yapılamamış ancak BSMMAT01 için değerlerin kabul edilebilir aralıkta olduğu görülmüştür.
Tek değişkenli uç değerlerin incelenmesi için z puanları kullanılır.
## BSBM19E BSBM22D BSMMAT01
## 1 NA NA -1.75
## 2 NA NA -0.94
## 3 NA NA 0.12
## 4 NA NA -1.44
## 5 NA NA -0.22
## 6 NA NA -1.10
Çok değişkenli uç değerleri belirlemek için Mahalanobis uzaklığı hesaplanmıştır.
md <- mahalanobis(ogrenci, center = colMeans(ogrenci), cov = cov(ogrenci))
alpha <- .001
cutoff <- (qchisq(p = 1 - alpha, df = ncol(ogrenci)))
ucdegerler<-which(md>cutoff)
ucdegerler## integer(0)
Normallik:
Eş Varyanslılık:
Çok Değişkenli Normalliğin İncelenmesi
## Call: mardia(x = ogrenci)
##
## Mardia tests of multivariate skew and kurtosis
## Use describe(x) the to get univariate tests
## n.obs = 4660 num.vars = 3
## b1p = 0.47 skew = 364.48 with probability <= 3.4e-72
## small sample skew = 364.84 with probability <= 2.8e-72
## b2p = 14.32 kurtosis = -4.22 with probability <= 2.5e-05
Çoklu Bağlantılılık:
## BSBM19E BSBM22D BSMMAT01
## BSBM19E 1 NA NA
## BSBM22D NA 1 NA
## BSMMAT01 NA NA 1
VIF ve Tolerance Değerleri:
## Variables Tolerance VIF
## 1 BSBM22D 0.5777438 1.730871
## 2 BSBM19E 0.5777438 1.730871
Korelasyon matrisinde kayıp veri nedeniyle değişkenler arası korelasyon katsayıları hesaplanamamıştır. Ancak VIF değerleri BSBM22D ve BSBM19E için 1.73, Tolerance değerleri ise 0.578 olarak bulunmuştur. Her iki değişken de önerilen sınır değerlerin (VIF < 10, Tolerance > 0.10) çok altında kalmaktadır. Modelde çoklu bağlantılılık sorunu bulunmamaktadır.
Yol analizi, bağımlı değişken ile iki veya daha fazla bağımsız değişken arasındaki ilişkileri inceleyerek nedensel modelleri değerlendirmek için kullanılan bir istatistiksel analiz yöntemidir.
library(dplyr)
library(haven)
ogrenci1 <- read_sav("veri.sav")
colnames(ogrenci1) <- c("ID","TOT","MAT01","MAT02","MAT03","MAT04","MAT05","SEVME0","SEVME1","OZGUVEN0","OZGUVEN1","DEGER0","DEGER1")
ogrenci <- na.omit(ogrenci1)yol_model <- 'OZGUVEN1 ~ MAT01
SEVME1 ~ MAT01
DEGER1 ~ OZGUVEN1 + SEVME1
OZGUVEN1 ~~ SEVME1'
library(lavaan)
yol_fit <- sem(yol_model, ogrenci1)library(semPlot)
semPaths(yol_fit,rotation=2, curvePivot = TRUE,
sizeMan = 12, sizeInt = 1,
sizeLat = 4,
edge.label.cex = 1.8,
pastel=TRUE,
nCharNodes = 0, nCharEdges = 0)## chisq df pvalue
## 9.438 1.000 0.002
## rmsea rmsea.ci.lower rmsea.ci.upper rmsea.pvalue
## 0.042 0.021 0.069 0.641
## srmr
## 0.01
## cfi tli nnfi
## 0.998 0.990 0.990
fitmeasures(yol_fit,fit.measures = c("chisq" ,"df" ,"pvalue",
"cfi","tli","rmsea",
"rmsea.ci.lower","rmsea.ci.upper","srmr"))## chisq df pvalue cfi tli
## 9.438 1.000 0.002 0.998 0.990
## rmsea rmsea.ci.lower rmsea.ci.upper srmr
## 0.042 0.021 0.069 0.010
Genel olarak modelin veriyle uyumlu olduğu söylenebilir.
## $type
## [1] "normalized"
##
## $cov
## OZGUVE SEVME1 DEGER1 MAT01
## OZGUVEN1 0.00
## SEVME1 0.00 0.00
## DEGER1 0.00 0.00 0.00
## MAT01 0.00 0.00 -2.23 0.00
## lhs op rhs mi epc sepc.lv sepc.all sepc.nox
## 13 OZGUVEN1 ~ DEGER1 9.429 -0.076 -0.076 -0.082 -0.082
## 10 OZGUVEN1 ~~ DEGER1 9.429 -0.033 -0.033 -0.082 -0.082
## 16 DEGER1 ~ MAT01 9.429 0.000 0.000 -0.045 0.000
## 19 MAT01 ~ DEGER1 9.429 -8.953 -8.953 -0.063 -0.063
Modelin Yeniden Tanımlanması
yol_model_v1 <- 'OZGUVEN1 ~ MAT01
DEGER1 ~ OZGUVEN1 + SEVME1
OZGUVEN1 ~~ DEGER1
OZGUVEN1 ~~ SEVME1'
yol_fit_v1 <- sem(yol_model_v1, ogrenci1)semPaths(yol_fit_v1,rotation=2, curvePivot = TRUE,
sizeMan = 12, sizeInt = 1,
sizeLat = 4,
edge.label.cex = 1.8,
pastel=TRUE,
nCharNodes = 0, nCharEdges = 0)## chisq df
## 497.812 1.000
p_pa <-
semPaths(yol_fit_v1, whatLabels = "est",
sizeMan = 10,
edge.label.cex = 1.15,
style = "ram",layout = "spring" ,
nCharNodes = 0, nCharEdges = 0)## lavaan 0.6-21 ended normally after 22 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 8
##
## Used Total
## Number of observations 4713 4925
##
## Model Test User Model:
##
## Test statistic 9.438
## Degrees of freedom 1
## P-value (Chi-square) 0.002
##
## Parameter Estimates:
##
## Standard errors Standard
## Information Expected
## Information saturated (h1) model Structured
##
## Regressions:
## Estimate Std.Err z-value P(>|z|)
## OZGUVEN1 ~
## MAT01 -0.004 0.000 -44.429 0.000
## SEVME1 ~
## MAT01 -0.002 0.000 -22.914 0.000
## DEGER1 ~
## OZGUVEN1 0.095 0.016 5.806 0.000
## SEVME1 0.483 0.015 32.123 0.000
##
## Covariances:
## Estimate Std.Err z-value P(>|z|)
## .OZGUVEN1 ~~
## .SEVME1 0.232 0.007 31.477 0.000
##
## Variances:
## Estimate Std.Err z-value P(>|z|)
## .OZGUVEN1 0.367 0.008 48.544 0.000
## .SEVME1 0.553 0.011 48.544 0.000
## .DEGER1 0.432 0.009 48.544 0.000
## lhs op rhs est.std se z pvalue ci.lower ci.upper
## 1 OZGUVEN1 ~ MAT01 -0.543 0.009 -57.320 0 -0.562 -0.525
## 2 SEVME1 ~ MAT01 -0.317 0.013 -24.786 0 -0.342 -0.292
## 3 DEGER1 ~ OZGUVEN1 0.088 0.015 5.818 0 0.058 0.117
## 4 DEGER1 ~ SEVME1 0.485 0.014 34.931 0 0.457 0.512
## 5 OZGUVEN1 ~~ SEVME1 0.516 0.011 48.266 0 0.495 0.537
## 6 OZGUVEN1 ~~ OZGUVEN1 0.705 0.010 68.429 0 0.685 0.725
## 7 SEVME1 ~~ SEVME1 0.900 0.008 111.242 0 0.884 0.916
## 8 DEGER1 ~~ DEGER1 0.708 0.011 63.618 0 0.686 0.730
## 9 MAT01 ~~ MAT01 1.000 0.000 NA NA 1.000 1.000
Standartlaştırılmış Artık
## OZGUVE SEVME1 DEGER1 MAT01
## OZGUVEN1 0.520
## SEVME1 0.330 0.615
## DEGER1 0.209 0.328 0.610
## MAT01 -43.294 -27.420 -17.351 12206.404
## $cov
## OZGUVE SEVME1 DEGER1 MAT01
## OZGUVEN1 0.520
## SEVME1 0.330 0.615
## DEGER1 0.209 0.328 0.610
## MAT01 -43.294 -27.420 -20.078 12206.404
## lhs op rhs est se z pvalue ci.lower ci.upper
## 1 OZGUVEN1 ~ MAT01 -0.004 0.000 -44.429 0 -0.004 -0.003
## 2 SEVME1 ~ MAT01 -0.002 0.000 -22.914 0 -0.002 -0.002
## 3 DEGER1 ~ OZGUVEN1 0.095 0.016 5.806 0 0.063 0.127
## 4 DEGER1 ~ SEVME1 0.483 0.015 32.123 0 0.454 0.512
## 5 OZGUVEN1 ~~ SEVME1 0.232 0.007 31.477 0 0.218 0.247
## 6 OZGUVEN1 ~~ OZGUVEN1 0.367 0.008 48.544 0 0.352 0.381
## 7 SEVME1 ~~ SEVME1 0.553 0.011 48.544 0 0.531 0.575
## 8 DEGER1 ~~ DEGER1 0.432 0.009 48.544 0 0.415 0.450
## 9 MAT01 ~~ MAT01 12206.404 0.000 NA NA 12206.404 12206.404
## std.lv std.all std.nox
## 1 -0.004 -0.543 -0.005
## 2 -0.002 -0.317 -0.003
## 3 0.095 0.088 0.088
## 4 0.483 0.485 0.485
## 5 0.232 0.516 0.516
## 6 0.367 0.705 0.705
## 7 0.553 0.900 0.900
## 8 0.432 0.708 0.708
## 9 12206.404 1.000 12206.404
## OZGUVEN1 SEVME1 DEGER1
## 0.295 0.100 0.292
library(knitr)
library(dplyr)
standardizedsolution(yol_fit) %>%
filter(op == "~") %>%
dplyr::select(lhs, rhs, est.std, se, z, pvalue) %>%
dplyr::rename('Değişkenler' = lhs,
'Gösterge' = rhs,
'B' = est.std,
'SE' = se,
'Z' = z,
'p-value' = pvalue) %>%
knitr::kable(digits = 3, booktabs = TRUE, format = "markdown",
caption = "Yol Katsayıları")| Değişkenler | Gösterge | B | SE | Z | p-value |
|---|---|---|---|---|---|
| OZGUVEN1 | MAT01 | -0.543 | 0.009 | -57.320 | 0 |
| SEVME1 | MAT01 | -0.317 | 0.013 | -24.786 | 0 |
| DEGER1 | OZGUVEN1 | 0.088 | 0.015 | 5.818 | 0 |
| DEGER1 | SEVME1 | 0.485 | 0.014 | 34.931 | 0 |
Aracılık etkisinin istatistiksel olarak ispatlanmasına ilişkin iki temel yaklaşım bulunmaktadır: Baron ve Kenny’nin nedensellik yaklaşımı ve çağdaş yaklaşım. Birinci yaklaşım uzun zamandır kullanılan ve oldukça popüler olan bir yaklaşımdır. Ancak son yıllarda öne sürülen çağdaş yaklaşım geleneksel yaklaşıma önemli eleştiriler getirmiştir.
Yöntem 1: Baron & Kenny
library(stargazer)
fit <- lm(BSMMAT01 ~ BSBM22D, data=ogrenci)
fita <- lm(BSBM19E ~ BSBM22D, data=ogrenci)
fitb <- lm(BSMMAT01 ~ BSBM19E + BSBM22D, data=ogrenci)
fitc <- lm(BSBM22D ~ BSMMAT01 + BSBM19E, data=ogrenci)
stargazer(fit, fita, fitb, fitc, type = "text", title = "Baron and Kenny Yöntemi ile Aracılık Etkisi",digits = 2,
font.size ="tiny")##
## Baron and Kenny Yöntemi ile Aracılık Etkisi
## ===========================================================================================================================
## Dependent variable:
## -------------------------------------------------------------------------------------------------------
## BSMMAT01 BSBM19E BSMMAT01 BSBM22D
## (1) (2) (3) (4)
## ---------------------------------------------------------------------------------------------------------------------------
## BSMMAT01 -0.002***
## (0.0001)
##
## BSBM19E -13.73*** 0.53***
## (1.69) (0.01)
##
## BSBM22D -42.41*** 0.71*** -32.90***
## (1.40) (0.01) (1.84)
##
## Constant 620.01*** 0.40*** 626.36*** 2.45***
## (4.03) (0.03) (4.09) (0.07)
##
## ---------------------------------------------------------------------------------------------------------------------------
## Observations 4,731 4,660 4,660 4,660
## R2 0.16 0.42 0.18 0.46
## Adjusted R2 0.16 0.42 0.18 0.46
## Residual Std. Error 101.16 (df = 4729) 0.87 (df = 4658) 100.25 (df = 4657) 0.77 (df = 4657)
## F Statistic 917.10*** (df = 1; 4729) 3,404.40*** (df = 1; 4658) 496.66*** (df = 2; 4657) 1,978.44*** (df = 2; 4657)
## ===========================================================================================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
Baron & Kenny’nin dört adımlı yaklaşımı uygulandığında tüm adımların koşullarını karşıladığı görülmektedir.
## $`Mod1: Y~X`
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 620.81288 4.058061 152.98265 0.000000e+00
## pred -42.60032 1.408482 -30.24555 1.237287e-183
##
## $`Mod2: Y~X+M`
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 626.35702 4.087670 153.230815 0.000000e+00
## pred -32.90007 1.840279 -17.877757 3.445747e-69
## med -13.73138 1.692788 -8.111691 6.328481e-16
##
## $`Mod3: M~X`
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.4037568 0.03488319 11.57454 1.447716e-30
## pred 0.7064299 0.01210735 58.34721 0.000000e+00
##
## $Indirect.Effect
## [1] -9.700255
##
## $SE
## [1] 1.207338
##
## $z.value
## [1] -8.034419
##
## $N
## [1] 4660
Sobel testi dolaylı etkinin anlamlı olduğunu doğrulamaktadır.
Yöntem 2: mediate Yöntemi
library(mediation)
library(gvlma)
fitM <- lm(BSBM19E ~ BSBM22D, data=ogrenci)
fitY <- lm(BSMMAT01 ~ BSBM22D + BSBM19E, data=ogrenci)##
## Call:
## lm(formula = BSBM19E ~ BSBM22D, data = ogrenci)
##
## Coefficients:
## (Intercept) BSBM22D
## 0.4038 0.7064
##
##
## ASSESSMENT OF THE LINEAR MODEL ASSUMPTIONS
## USING THE GLOBAL TEST ON 4 DEGREES-OF-FREEDOM:
## Level of Significance = 0.05
##
## Call:
## gvlma(x = fitM)
##
## Value p-value Decision
## Global Stat 191.37 0.000e+00 Assumptions NOT satisfied!
## Skewness 19.16 1.203e-05 Assumptions NOT satisfied!
## Kurtosis 43.19 4.972e-11 Assumptions NOT satisfied!
## Link Function 116.36 0.000e+00 Assumptions NOT satisfied!
## Heteroscedasticity 12.66 3.728e-04 Assumptions NOT satisfied!
##
## Call:
## lm(formula = BSMMAT01 ~ BSBM22D + BSBM19E, data = ogrenci)
##
## Coefficients:
## (Intercept) BSBM22D BSBM19E
## 626.36 -32.90 -13.73
##
##
## ASSESSMENT OF THE LINEAR MODEL ASSUMPTIONS
## USING THE GLOBAL TEST ON 4 DEGREES-OF-FREEDOM:
## Level of Significance = 0.05
##
## Call:
## gvlma(x = fitY)
##
## Value p-value Decision
## Global Stat 60.9928 1.794e-12 Assumptions NOT satisfied!
## Skewness 46.3744 9.768e-12 Assumptions NOT satisfied!
## Kurtosis 9.6823 1.861e-03 Assumptions NOT satisfied!
## Link Function 4.5599 3.273e-02 Assumptions NOT satisfied!
## Heteroscedasticity 0.3762 5.397e-01 Assumptions acceptable.
library(mediation)
fitMed <- mediation::mediate(fitM, fitY, treat="BSBM22D", mediator="BSBM19E")
summary(fitMed)##
## Causal Mediation Analysis
##
## Quasi-Bayesian Confidence Intervals
##
## Estimate 95% CI Lower 95% CI Upper p-value
## ACME -9.78205 -12.29697 -7.39086 < 2.2e-16 ***
## ADE -32.81100 -36.44982 -28.81973 < 2.2e-16 ***
## Total Effect -42.59306 -45.20380 -39.66323 < 2.2e-16 ***
## Prop. Mediated 0.22883 0.17293 0.29192 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Sample Size Used: 4660
##
##
## Simulations: 1000
library(mediation)
fitMedBoot <- mediation::mediate(fitM, fitY, boot=TRUE, sims=999, treat="BSBM22D", mediator="BSBM19E")
summary(fitMedBoot)##
## Causal Mediation Analysis
##
## Nonparametric Bootstrap Confidence Intervals with the Percentile Method
##
## Estimate 95% CI Lower 95% CI Upper p-value
## ACME -9.70026 -12.31981 -7.43315 < 2.2e-16 ***
## ADE -32.90007 -36.65409 -29.00091 < 2.2e-16 ***
## Total Effect -42.60032 -45.42958 -39.86897 < 2.2e-16 ***
## Prop. Mediated 0.22770 0.17146 0.29324 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Sample Size Used: 4660
##
##
## Simulations: 999
Aracılık oranı yaklaşık %22.7’dir. Yani matematik kolaylık algısının başarı üzerindeki toplam etkisinin yaklaşık beşte biri, matematiği sevme değişkeni aracılığıyla işlemektedir. Bootstrap analizi (999 tekrar) bu sonuçları neredeyse aynı değerlerle doğrulamaktadır (ACME = −9.70, p < .001). gvlma varsayım testlerinin bazı koşulları ihlal ettiğini göstermesi, bootstrap tercihini hem metodolojik hem de pratik açıdan güçlü biçimde desteklemektedir.
Bu çalışmada yol analizi ve aracılık etkisi kavramlarını hem kuramsal hem de uygulamalı düzeyde ele alma fırsatı buldum. Analizlerin teknik boyutunun ötesinde değişkenler arasındaki ilişkilerin nasıl ve neden işlediğini sorgulamanın istatistiksel bir yönteme nasıl dönüştüğünü daha net kavradım.
Varsayım kontrollerinin analizin belki de en kritik aşaması olduğunu bu çalışmayı yaparken bir kez daha gördüm. Normallik, eş varyanslılık ve çoklu bağlantılılık gibi koşulların karşılanıp karşılanmadığını yalnızca test istatistikleriyle değil, grafik araçlarıyla da değerlendirmek, verilere daha bütünsel bakmayı gerektiriyor.
Baron & Kenny’nin dört adımlı yöntemi, aracılık mantığını adım adım kurmak açısından öğretici olmakla birlikte, dolaylı etkinin anlamlılığını doğrudan test edememesi önemli bir sınırlılık. Bu noktada mediation paketinin sunduğu bootstrap yaklaşımının neden tercih edilmesi gerektiği, özellikle küçük örneklemlerde ve normallik varsayımının tam sağlanamadığı durumlarda pratikte daha iyi anlaşılıyor. İki yöntemi aynı veri üzerinde uygulayarak sonuçların nasıl örtüştüğünü ya da ayrıştığını görmek, yalnızca bir yöntemi ezberlemekten çok daha fazlasını öğretti. Teknik açıdan lavaan ve semPlot paketlerinin yol diyagramlarını görselleştirmedeki pratikliği dikkat çekiciydi. Modeli bir diyagram olarak görmek, katsayı tablolarına bakmaktan çok daha hızlı bir şekilde “bu model ne söylüyor?” sorusunu yanıtlıyor.
Sonuç olarak bu görev istatistiksel bir tekniği öğrenmekten ziyade nedensellik ve aracılık üzerine düşünmeyi öğrenmek gibi hissettirdi. Bir değişkenin diğerini ne kadar etkilediğini sormak kadar, bu etkinin hangi mekanizma üzerinden işlediğini sormak da en az o kadar anlamlı bir araştırma sorusu.