Öğrenme Günlüğü- p Değeri

Bu hafta p-değerine ilişkin dersimiz çok aydınlatıcıydı, Özellikle örneklem ortalamaları dağılımı kavramı, p-değerini anlamada çok etkili oldu. Daha önce p-değerini doğrudan bir sonuç olarak yorumlarken, şimdi bunun arkasında teorik bir dağılım olduğunu ve yaptığımız tüm çıkarımların bu referans çerçevesine dayandığını fark ettim. Bununla birlikte HLM konusunu tekrar ettim. Çalışmada PISA 2022 verisi kullandım. Pisa öğrenci ve okul spss dosyalarını birleştirerek hiyerarşik analize uygun biçime getirdim. Dersteki analizler ve değişkenleri kullanarak analizleri yaptım.

HLM Uygulama

library(tidyverse)
## Warning: package 'ggplot2' was built under R version 4.5.3
## Warning: package 'dplyr' was built under R version 4.5.3
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.2.0     ✔ readr     2.1.5
## ✔ forcats   1.0.0     ✔ stringr   1.5.2
## ✔ ggplot2   4.0.2     ✔ tibble    3.3.0
## ✔ lubridate 1.9.4     ✔ tidyr     1.3.1
## ✔ purrr     1.1.0     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(sjmisc) # frekan tabloları
## Warning: package 'sjmisc' was built under R version 4.5.3
## 
## Attaching package: 'sjmisc'
## 
## The following object is masked from 'package:purrr':
## 
##     is_empty
## 
## The following object is masked from 'package:tidyr':
## 
##     replace_na
## 
## The following object is masked from 'package:tibble':
## 
##     add_case
library(car)  #özet istatitik
## Warning: package 'car' was built under R version 4.5.3
## Zorunlu paket yükleniyor: carData
## 
## Attaching package: 'car'
## 
## The following object is masked from 'package:dplyr':
## 
##     recode
## 
## The following object is masked from 'package:purrr':
## 
##     some
library(lme4) # lmer() functions
## Warning: package 'lme4' was built under R version 4.5.2
## Zorunlu paket yükleniyor: Matrix
## 
## Attaching package: 'Matrix'
## 
## The following objects are masked from 'package:tidyr':
## 
##     expand, pack, unpack
## 
## Registered S3 method overwritten by 'lme4':
##   method           from
##   na.action.merMod car
# library(nlme) #

library(interactions) # grafikler
## Warning: package 'interactions' was built under R version 4.5.2
# Gerekli paket
library(haven)
## Warning: package 'haven' was built under R version 4.5.3
# SPSS dosyasını oku
mergedson <- read_sav("mergedson.sav")

1. Rastgele Etkiler ANOVA

null_model <- lmer(PV1MATH ~ 1 + (1 | CNTSCHID), data = mergedson)

summary(null_model)
## Linear mixed model fit by REML ['lmerMod']
## Formula: PV1MATH ~ 1 + (1 | CNTSCHID)
##    Data: mergedson
## 
## REML criterion at convergence: 79427.3
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.5484 -0.6573  0.0012  0.6349  4.1309 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  CNTSCHID (Intercept) 4537     67.35   
##  Residual             3437     58.62   
## Number of obs: 7166, groups:  CNTSCHID, 193
## 
## Fixed effects:
##             Estimate Std. Error t value
## (Intercept)  449.020      4.901   91.61

Intercept (γ₀₀) = 449.020

Türkiye genelinde öğrencilerin ortalama matematik başarısı yaklaşık 449 puandır.

Varyans Bileşenleri Okullar arası varyans (τ₀₀) = 4537 Öğrenci içi varyans (σ²) = 3437

okullar arası varyansın (τ₀₀ = 4537) sıfırdan farklı olduğu görülmektedir.

Genel ortalama için %95 güven aralığı

95%CI(γ00)=γ00±1.96(SE) 95%CI(γ00)=449.020 ±1.96(4.901)=(439.41,458.636)

Türkiye genelinde öğrencilerin ortalama matematik başarısının %95 güvenle 439.41 ile 458.63 arasında olduğu söylenebilir.

Okul Ortalamaları İçin Olası Değerler Aralığı

okUL ortalamalarının evrende nasıl dağıldığını görmek için grup-arası varyans (τ00=4537) kullanılır:

449.020 ± 1.96 √4537=(317.02, 581.02)

Okulların ortalama matematik başarılarının evrende yaklaşık olarak 317 ile 581 puan arasında dağıldığı söylenebilir.

Sınıflararası Korelasyon (Intraclass Correlation - ICC)

4537/(4537+3437)
## [1] 0.5689742

Matematik başarısındaki toplam varyansın yaklaşık %57’si okullar arası farklardan kaynaklanmaktadır.

Güvenirlik (Reliability):

library(dplyr)

# 1. Modelden varyans bileşenlerini çekelim
var_comp <- as.data.frame(VarCorr(null_model))

tau_00 <- var_comp$vcov[var_comp$grp == "CNTSCHID"]   # okullar arası varyans
sigma_sq <- var_comp$vcov[var_comp$grp == "Residual"] # öğrenci içi varyans

# 2. Her okulun örneklem büyüklüğünü (nj) bulalım
n_j <- mergedson %>%
  count(CNTSCHID) %>%
  pull(n)

# 3. Her okul için kesişim güvenilirliği (lambda)
reliability_j <- tau_00 / (tau_00 + (sigma_sq / n_j))

# 4. Ortalama güvenilirlik (HLM'deki değer)
mean_reliability <- mean(reliability_j)

print(paste("Kesişim Güvenilirliği (Reliability Estimate):",
            round(mean_reliability, 3)))
## [1] "Kesişim Güvenilirliği (Reliability Estimate): 0.979"

Düzey-1 kesişiminin (intercept) rastgele etkisine ilişkin güvenirlik değeri, Düzey-2 birimlerinin ortalama güvenirliğidir. Her bir okulun kesişim değeri için hesaplanan En Küçük Kareler - OLS kestirimlerinin genel güvenirliğini ölçer. Bu model için elde edilen güvenirlik kestirimi oldukça yüksektir ve 0.979 olarak bulunmuştur.

# tek düzey model
model_single <- lm(PV1MATH ~ 1, data = mergedson)

# null model (çok düzey)
anova(null_model, model_single)
## refitting model(s) with ML (instead of REML)
## Data: mergedson
## Models:
## model_single: PV1MATH ~ 1
## null_model: PV1MATH ~ 1 + (1 | CNTSCHID)
##              npar   AIC   BIC logLik -2*log(L)  Chisq Df Pr(>Chisq)    
## model_single    2 84717 84731 -42357     84713                         
## null_model      3 79438 79459 -39716     79432 5280.8  1  < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Yorum: Tek düzeyli model ile çok düzeyli boş model karşılaştırıldığında, çok düzeyli modelin sapma değerinin daha düşük olduğu görülmektedir (tek düzey: 84713; çok düzey: 79432). Modeller arasındaki farkın istatistiksel olarak anlamlı olduğu belirlenmiştir (χ² = 5280.8, sd = 1, p < .001). Bu bulgu, matematik başarısının okullara göre anlamlı düzeyde farklılaştığını ve çok düzeyli modellemenin gerekli olduğunu göstermektedir.

Bağımlı Değişken Olarak Ortalamalarla Regresyon (Means-as-Outcomes)

Okullar arası varyansın varlığı kanıtlandıktan sonra, bu varyansı açıklamak amacıyla okul düzeyindeki “Ortalama SES” (ESCS) değişkeni modele dahil edilmiştir.

library(dplyr)

mergedson <- mergedson %>%
  group_by(CNTSCHID) %>%
  mutate(escs_mean = mean(ESCS, na.rm = TRUE)) %>%
  ungroup()
library(lme4)

model_means <- lmer(PV1MATH ~ escs_mean + (1 | CNTSCHID),
                    data = mergedson)

summary(model_means)
## Linear mixed model fit by REML ['lmerMod']
## Formula: PV1MATH ~ escs_mean + (1 | CNTSCHID)
##    Data: mergedson
## 
## REML criterion at convergence: 79304.7
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.5807 -0.6586  0.0036  0.6381  4.0450 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  CNTSCHID (Intercept) 2424     49.24   
##  Residual             3437     58.62   
## Number of obs: 7166, groups:  CNTSCHID, 193
## 
## Fixed effects:
##             Estimate Std. Error t value
## (Intercept)  527.698      7.165   73.65
## escs_mean     64.963      5.113   12.71
## 
## Correlation of Fixed Effects:
##           (Intr)
## escs_mean 0.863

Sabit Etkiler Intercept (γ₀₀) = 448.592

Ortalama sosyoekonomik düzeye sahip okullarda öğrencilerin ortalama matematik başarı puanı yaklaşık 448.59’dur.

escs_mean (γ₀₁) = 64.963 (t = 12.71, p < .001 )

Okulun ortalama sosyoekonomik düzeyi arttıkça matematik başarısı anlamlı düzeyde artmaktadır.

Random Effects τ₀₀ = 2424

Okullar arası başarı farkı hâlâ vardır, ancak azalmıştır.

2. Rastgele-Katsayı Modeli (Random-Coefficient Model)

Her okul için ayrı regresyon doğrusu kurularak, SES’in başarı üzerindeki etkisinin okullara göre değişip değişmediği incelenmiştir.

# group-mean ortalama
mergedson <- mergedson %>%
  group_by(CNTSCHID) %>%
  mutate(escs_mean = mean(ESCS, na.rm = TRUE),
         cses = ESCS - escs_mean) %>%
  ungroup()

# model
model_rc <- lmer(PV1MATH ~ cses + (cses | CNTSCHID),
                 data = mergedson)

summary(model_rc)
## Linear mixed model fit by REML ['lmerMod']
## Formula: PV1MATH ~ cses + (cses | CNTSCHID)
##    Data: mergedson
## 
## REML criterion at convergence: 79315.9
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.6129 -0.6620  0.0054  0.6371  3.9717 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev. Corr 
##  CNTSCHID (Intercept) 4536.33  67.352        
##           cses          32.05   5.661   0.12 
##  Residual             3385.49  58.185        
## Number of obs: 7161, groups:  CNTSCHID, 193
## 
## Fixed effects:
##             Estimate Std. Error t value
## (Intercept) 449.0404     4.9002  91.637
## cses          5.1664     0.8488   6.087
## 
## Correlation of Fixed Effects:
##      (Intr)
## cses 0.059

Kurulan rastgele katsayı modelinde, bireysel sosyoekonomik düzeyin matematik başarısı üzerindeki etkisinin anlamlı olduğu belirlenmiştir (γ₁₀ = 5.1664, p < .001). Bu bulgu, aynı okul içinde sosyoekonomik düzeyi daha yüksek olan öğrencilerin daha yüksek matematik başarısına sahip olduğunu göstermektedir. Ayrıca, eğim varyansının anlamlı olması (τ₁₁ = 32.05), bu etkinin okullara göre farklılaştığını ortaya koymaktadır. Kesişim ile eğim arasındaki düşük düzeyde pozitif ilişki (r = 0.12), ortalama başarısı yüksek okullarda SES etkisinin bir miktar daha güçlü olabileceğini göstermektedir.

3. Kesişim ve Eğim Katsayılarının Bağımlı Değişken Olduğu Model

Bu modelde: öğrencilerin matematik başarısı üzerindeki bireysel sosyoekonomik düzey (SES) etkisinin okullara göre değişip değişmediği ve bu değişimin okul düzeyindeki özellikler (okul ortalama SES ve okul türü) tarafından açıklanıp açıklanamadığı incelenmektedir. Ayrıca, SES’in başarı üzerindeki etkisinin okulun bağlamsal özelliklerine bağlı olarak farklılaşıp farklılaşmadığı çapraz düzey etkileşimler yoluyla test edilmektedir.

library(lme4)
library(lmerTest)
## Warning: package 'lmerTest' was built under R version 4.5.3
## 
## Attaching package: 'lmerTest'
## The following object is masked from 'package:lme4':
## 
##     lmer
## The following object is masked from 'package:stats':
## 
##     step
mergedson$S3 <- ifelse(mergedson$SCHLTYPE == 3, 0,
                       ifelse(mergedson$SCHLTYPE %in% c(1, 2), 1, NA))

model_full <- lmer(
  PV1MATH ~ cses + 
            escs_mean + S3 +          # Düzey-2 değişkenler
            cses:escs_mean +          # SES × okul SES
            cses:S3 +                   # SES × okul türü
            (1 + cses | CNTSCHID),      # random intercept + slope
  data = mergedson
)

summary(model_full)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: PV1MATH ~ cses + escs_mean + S3 + cses:escs_mean + cses:S3 +  
##     (1 + cses | CNTSCHID)
##    Data: mergedson
## 
## REML criterion at convergence: 79101.3
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.6326 -0.6568  0.0088  0.6413  3.7581 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev. Corr  
##  CNTSCHID (Intercept) 1778.90  42.177         
##           cses          22.02   4.693   -0.18 
##  Residual             3383.37  58.167         
## Number of obs: 7161, groups:  CNTSCHID, 193
## 
## Fixed effects:
##                Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)     562.639      7.501 188.359  75.004  < 2e-16 ***
## cses              8.402      1.919 149.979   4.379 2.23e-05 ***
## escs_mean        84.807      5.031 189.394  16.857  < 2e-16 ***
## S3              -89.167     10.886 194.938  -8.191 3.35e-14 ***
## cses:escs_mean    3.157      1.341 172.550   2.355  0.01967 *  
## cses:S3           9.795      3.231 255.236   3.032  0.00268 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) cses   escs_m S3     css:s_
## cses        -0.077                            
## escs_mean    0.896 -0.069                     
## S3          -0.566  0.044 -0.481              
## cses:scs_mn -0.066  0.897 -0.073  0.035       
## cses:S3      0.037 -0.404  0.032 -0.065 -0.321

Kurulan modelde bireysel sosyoekonomik düzeyin matematik başarısı üzerindeki etkisinin anlamlı ve pozitif olduğu belirlenmiştir (γ₁₀ = 4.5576, p < .001). Okulun ortalama sosyoekonomik düzeyinin de başarıyı güçlü bir şekilde yordadığı görülmüştür (γ₀₁ = 84.8068, p < .001). Okul türüne ilişkin bulgular, özel okullarda ortalama başarının devlet okullarına göre daha düşük olduğunu göstermektedir (γ = -89.1667, p < .001).

Çapraz düzey etkileşimler incelendiğinde, bireysel SES etkisinin okulun ortalama sosyoekonomik düzeyine göre değiştiği (γ = 3.1575, p < .05) ve özel okullarda bu etkinin daha güçlü olduğu (γ = 9.7954, p < .01) belirlenmiştir.

Eğimin Varyansının Anlamlılığı: Düzey-2 değişkenleri (okul ortalama sosyoekonomik düzeyi ve okul türü) modele eklendikten sonra, bireysel SES eğimine ilişkin varyansın (τ₁₁ = 22.02) sıfırdan farklı olduğu görülmektedir. Bu bulgu, sosyoekonomik düzeyin matematik başarısı üzerindeki etkisinin okullara göre değişmeye devam ettiğini göstermektedir. Dolayısıyla, eğimin sabit olduğu yönündeki yokluk hipotezi reddedilir ve rastgele eğimli modelin kullanılmasının uygun olduğu sonucuna ulaşılır.

Kesişim ve Eğim Korelasyonu: Düzey-1 kesişimi ile SES eğimi arasındaki korelasyon -0.18 olarak hesaplanmıştır. Bu bulgu, ortalama başarısı yüksek olan okullarda sosyoekonomik düzeyin başarı üzerindeki etkisinin bir miktar daha zayıf olma eğiliminde olduğunu göstermektedir.

Açıklanan Varyans: Okullar arası kesişim varyansı önceki modelde 4387.79 iken, bu modelde 1778.90’a düşmüştür. Bu doğrultuda hesaplanan açıklanan varyans oranı yaklaşık olarak (4387.79−1778.90)/4387.79=0.595 olup, okullar arası matematik başarı farklılıklarının yaklaşık %59.5’inin okul ortalama sosyoekonomik düzeyi ve okul türü tarafından açıklandığı görülmektedir.

Model karşılaştırması

anova(model_full, model_rc, test="Chisq")
## refitting model(s) with ML (instead of REML)
## Data: mergedson
## Models:
## model_rc: PV1MATH ~ cses + (cses | CNTSCHID)
## model_full: PV1MATH ~ cses + escs_mean + S3 + cses:escs_mean + cses:S3 + (1 + cses | CNTSCHID)
##            npar   AIC   BIC logLik -2*log(L)  Chisq Df Pr(>Chisq)    
## model_rc      6 79334 79376 -39661     79322                         
## model_full   10 79145 79213 -39562     79125 197.75  4  < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Yorum: Rastgele katsayı modeli ile Düzey-2 değişkenlerini ve çapraz düzey etkileşimleri içeren tam model karşılaştırıldığında, tam modelin sapma değerinin daha düşük olduğu görülmektedir (random katsayı modeli: 79322; tam model: 79125). Ki-kare fark testi sonucunda elde edilen farkın istatistiksel olarak anlamlı olduğu belirlenmiştir (χ² = 197.75, sd = 4, p < .001). Bu bulgu, okul düzeyindeki değişkenlerin ve etkileşim terimlerinin modele anlamlı katkı sağladığını ve veriye daha iyi uyum gösterdiğini ortaya koymaktadır.

Sabit Etkiler

interact_plot(model_full,
              pred = cses,
              modx = S3,
              interval = TRUE)

Elde edilen etkileşim grafiği, sosyoekonomik düzeyin matematik başarısı üzerindeki etkisinin okul türüne göre değiştiğini göstermektedir. Her iki okul türünde de sosyoekonomik düzey arttıkça başarı artmakla birlikte, bu artış özel okullarda daha belirgindir.