PIRLS-2021 Veri Setinde Türkiye ve Singapur Ülkelerinin Çeşitli Demografik Özellikler ve Okuma Becerilerine Verilen Yanıtlara Göre Karşılaştırılması
library(dplyr)
library(tidyverse)
library(haven)
load("C:/Users/a_onu/OneDrive/Desktop/R_Kodlar/data/ASASGPR5.Rdata")
load("C:/Users/a_onu/OneDrive/Desktop/R_Kodlar/data/ASATURR5.Rdata")
load("C:/Users/a_onu/OneDrive/Desktop/R_Kodlar/data/ASGSGPR5.Rdata")
load("C:/Users/a_onu/OneDrive/Desktop/R_Kodlar/data/ASGTURR5.Rdata")
Tek Bir Veri Setinin Oluşturulması
tur <- bind_rows(ASATURR5, ASGTURR5)
sgpr<- bind_rows(ASASGPR5, ASGSGPR5)
pirls_birlesik <- bind_rows(tur, sgpr)
pirls_sub <- pirls_birlesik %>%
select(
IDCNTRY, IDSCHOOL, IDSTUD, TOTWGT,
ASRREA01:ASRREA05, ASBG01, ASBG04, ASBG05A)
glimpse(pirls_sub)
## Rows: 25,502
## Columns: 12
## $ IDCNTRY <dbl+lbl> 792, 792, 792, 792, 792, 792, 792, 792, 792, 792, 792, 79…
## $ IDSCHOOL <dbl> 5001, 5001, 5001, 5001, 5001, 5001, 5001, 5001, 5001, 5001, 5…
## $ IDSTUD <dbl> 50010601, 50010602, 50010603, 50010604, 50010605, 50010607, 5…
## $ TOTWGT <dbl+lbl> 64.07452, 64.07452, 64.07452, 64.07452, 64.07452, 64.0745…
## $ ASRREA01 <dbl+lbl> 575.4389, 624.1437, 566.9780, 559.1095, 569.8236, 599.029…
## $ ASRREA02 <dbl+lbl> 557.2702, 612.6839, 568.7682, 606.6993, 570.4883, 594.515…
## $ ASRREA03 <dbl+lbl> 561.9532, 544.7382, 532.7829, 618.6042, 577.8663, 535.789…
## $ ASRREA04 <dbl+lbl> 573.6631, 503.8760, 529.9671, 537.0766, 581.3183, 546.127…
## $ ASRREA05 <dbl+lbl> 567.4520, 556.7769, 574.7689, 578.1380, 563.8770, 568.321…
## $ ASBG01 <dbl+lbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
## $ ASBG04 <dbl+lbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
## $ ASBG05A <dbl+lbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
pirls_clean <- na.omit(pirls_sub)
glimpse(pirls_clean)
## Rows: 12,453
## Columns: 12
## $ IDCNTRY <dbl+lbl> 792, 792, 792, 792, 792, 792, 792, 792, 792, 792, 792, 79…
## $ IDSCHOOL <dbl> 5001, 5001, 5001, 5001, 5001, 5001, 5001, 5001, 5001, 5001, 5…
## $ IDSTUD <dbl> 50010601, 50010602, 50010603, 50010604, 50010605, 50010607, 5…
## $ TOTWGT <dbl+lbl> 64.07452, 64.07452, 64.07452, 64.07452, 64.07452, 64.0745…
## $ ASRREA01 <dbl+lbl> 575.4389, 624.1437, 566.9780, 559.1095, 569.8236, 599.029…
## $ ASRREA02 <dbl+lbl> 557.2702, 612.6839, 568.7682, 606.6993, 570.4883, 594.515…
## $ ASRREA03 <dbl+lbl> 561.9532, 544.7382, 532.7829, 618.6042, 577.8663, 535.789…
## $ ASRREA04 <dbl+lbl> 573.6631, 503.8760, 529.9671, 537.0766, 581.3183, 546.127…
## $ ASRREA05 <dbl+lbl> 567.4520, 556.7769, 574.7689, 578.1380, 563.8770, 568.321…
## $ ASBG01 <dbl+lbl> 2, 2, 2, 2, 2, 1, 1, 2, 1, 2, 1, 2, 2, 2, 2, 1, 1, 1, 2, …
## $ ASBG04 <dbl+lbl> 5, 4, 2, 3, 2, 4, 4, 3, 4, 3, 3, 3, 4, 3, 2, 3, 2, 3, 5, …
## $ ASBG05A <dbl+lbl> 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
Değişkenlerin Yeniden Adlandırılması
pirls_clean <- pirls_clean%>% mutate(Ulke= IDCNTRY, cinsiyet=ASBG01, teknolojik_imkan=ASBG05A, kitap_sayisi= ASBG04)
pirls_yeni<-pirls_clean %>% mutate(cinsiyet = case_when(
cinsiyet == 1 ~ "Male",
cinsiyet == 2 ~ "Female",
TRUE ~ NA_character_
), Ulke= case_when(
Ulke==792~ "Turkiye",
Ulke== 702~"Singapur",
TRUE ~ NA_character_
))
pirls_yeni %>% count(Ulke)
## # A tibble: 2 × 2
## Ulke n
## <chr> <int>
## 1 Singapur 6633
## 2 Turkiye 5820
pirls_yeni %>% count(cinsiyet)
## # A tibble: 2 × 2
## cinsiyet n
## <chr> <int>
## 1 Female 6295
## 2 Male 6158
pirls_yeni %>% count(kitap_sayisi)
## # A tibble: 5 × 2
## kitap_sayisi n
## <dbl+lbl> <int>
## 1 1 [None or very few (0–10 books)] 1511
## 2 2 [Enough to fill one shelf (11–25 books)] 3310
## 3 3 [Enough to fill one bookcase (26–100 books)] 4350
## 4 4 [Enough to fill two bookcases (101–200 books)] 1804
## 5 5 [Enough to fill three or more bookcases (more than 200)] 1478
Ülkelere Göre Ortalama Puanların Hesaplanması
pirls_yeni %>%
group_by(Ulke) %>%
summarise(
pv1 = mean(ASRREA01, na.rm = TRUE),
pv2 = mean(ASRREA02, na.rm = TRUE),
pv3 = mean(ASRREA03, na.rm = TRUE),
pv4 = mean(ASRREA04, na.rm = TRUE),
pv5 = mean(ASRREA05, na.rm = TRUE)
)
## # A tibble: 2 × 6
## Ulke pv1 pv2 pv3 pv4 pv5
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Singapur 584. 584. 583. 584. 583.
## 2 Turkiye 506. 505. 505. 504. 504.
library(psych)
library(GGally)
describe(pirls_yeni)
## vars n mean sd median trimmed
## IDCNTRY 1 12453 744.06 44.91 702.00 743.33
## IDSCHOOL 2 12453 5094.25 53.32 5094.00 5094.31
## IDSTUD 3 12453 50942921.40 533193.61 50940508.00 50943462.48
## TOTWGT 4 12453 91.73 121.26 7.92 67.41
## ASRREA01 5 12453 547.90 93.20 555.95 551.73
## ASRREA02 6 12453 547.47 94.18 555.46 551.31
## ASRREA03 7 12453 546.20 94.12 554.09 549.99
## ASRREA04 8 12453 546.28 94.08 553.36 549.91
## ASRREA05 9 12453 546.12 93.76 553.25 549.96
## ASBG01 10 12453 1.51 0.50 2.00 1.51
## ASBG04 11 12453 2.87 1.16 3.00 2.84
## ASBG05A 12 12453 1.26 0.44 1.00 1.20
## Ulke* 13 12453 1.47 0.50 1.00 1.46
## cinsiyet* 14 12453 1.49 0.50 1.00 1.49
## teknolojik_imkan 15 12453 1.26 0.44 1.00 1.20
## kitap_sayisi 16 12453 2.87 1.16 3.00 2.84
## mad min max range skew kurtosis
## IDCNTRY 0.00 702.00 792.00 90.00 0.13 -1.98
## IDSCHOOL 68.20 5001.00 5192.00 191.00 0.00 -1.18
## IDSTUD 681422.23 50010201.00 51920216.00 1910015.00 0.00 -1.18
## TOTWGT 8.00 1.26 695.11 693.85 1.78 3.60
## ASRREA01 92.53 187.78 830.63 642.86 -0.39 0.03
## ASRREA02 94.00 126.61 835.43 708.82 -0.39 0.09
## ASRREA03 93.03 166.11 829.98 663.87 -0.38 0.01
## ASRREA04 93.60 191.64 862.93 671.28 -0.37 0.02
## ASRREA05 93.55 160.51 855.14 694.62 -0.39 0.03
## ASBG01 0.00 1.00 2.00 1.00 -0.02 -2.00
## ASBG04 1.48 1.00 5.00 4.00 0.24 -0.65
## ASBG05A 0.00 1.00 2.00 1.00 1.07 -0.85
## Ulke* 0.00 1.00 2.00 1.00 0.13 -1.98
## cinsiyet* 0.00 1.00 2.00 1.00 0.02 -2.00
## teknolojik_imkan 0.00 1.00 2.00 1.00 1.07 -0.85
## kitap_sayisi 1.48 1.00 5.00 4.00 0.24 -0.65
## se
## IDCNTRY 0.40
## IDSCHOOL 0.48
## IDSTUD 4778.02
## TOTWGT 1.09
## ASRREA01 0.84
## ASRREA02 0.84
## ASRREA03 0.84
## ASRREA04 0.84
## ASRREA05 0.84
## ASBG01 0.00
## ASBG04 0.01
## ASBG05A 0.00
## Ulke* 0.00
## cinsiyet* 0.00
## teknolojik_imkan 0.00
## kitap_sayisi 0.01
Ulkelere Göre Korelasyon Değerlerinin Hesaplanması
pirls_yeni %>%
group_by(Ulke) %>%
summarise(
cor_kitap_sayisi_ASRREA01 = cor(kitap_sayisi, ASRREA01, use = "pairwise.complete.obs"),
cor_kitap_sayisi_ASRREA02 = cor(kitap_sayisi, ASRREA02, use = "pairwise.complete.obs"),
cor_kitap_sayisi_ASRREA03 = cor(kitap_sayisi, ASRREA03, use = "pairwise.complete.obs"),
cor_kitap_sayisi_ASRREA04 = cor(kitap_sayisi, ASRREA04, use = "pairwise.complete.obs"),
cor_kitap_sayisi_ASRREA05 = cor(kitap_sayisi, ASRREA05, use = "pairwise.complete.obs"))
## # A tibble: 2 × 6
## Ulke cor_kitap_sayisi_ASRR…¹ cor_kitap_sayisi_ASR…² cor_kitap_sayisi_ASR…³
## <chr> <dbl> <dbl> <dbl>
## 1 Singapur 0.304 0.300 0.308
## 2 Turkiye 0.299 0.296 0.297
## # ℹ abbreviated names: ¹cor_kitap_sayisi_ASRREA01, ²cor_kitap_sayisi_ASRREA02,
## # ³cor_kitap_sayisi_ASRREA03
## # ℹ 2 more variables: cor_kitap_sayisi_ASRREA04 <dbl>,
## # cor_kitap_sayisi_ASRREA05 <dbl>
Aykırı Değerler, Kaldıraç Etkisi ve Etkileşim Değerlerinin Hesaplanması
lm_model <- lm(ASRREA01 ~ kitap_sayisi + teknolojik_imkan + cinsiyet, data = pirls_yeni)
lm_model
##
## Call:
## lm(formula = ASRREA01 ~ kitap_sayisi + teknolojik_imkan + cinsiyet,
## data = pirls_yeni)
##
## Coefficients:
## (Intercept) kitap_sayisi teknolojik_imkan cinsiyetMale
## 502.03 23.62 -22.34 12.60
pirls_yeni$std_resid <- rstandard(lm_model)
pirls_yeni$leverage <- hatvalues(lm_model)
pirls_yeni$cooksD <- cooks.distance(lm_model)
head(pirls_yeni)
## # A tibble: 6 × 19
## IDCNTRY IDSCHOOL IDSTUD TOTWGT ASRREA01 ASRREA02 ASRREA03 ASRREA04 ASRREA05
## <dbl+lbl> <dbl> <dbl> <dbl+> <dbl+lb> <dbl+lb> <dbl+lb> <dbl+lb> <dbl+lb>
## 1 792 5001 5.00e7 64.1 575. 557. 562. 574. 567.
## 2 792 5001 5.00e7 64.1 624. 613. 545. 504. 557.
## 3 792 5001 5.00e7 64.1 567. 569. 533. 530. 575.
## 4 792 5001 5.00e7 64.1 559. 607. 619. 537. 578.
## 5 792 5001 5.00e7 64.1 570. 570. 578. 581. 564.
## 6 792 5001 5.00e7 64.1 599. 595. 536. 546. 568.
## # ℹ 10 more variables: ASBG01 <dbl+lbl>, ASBG04 <dbl+lbl>, ASBG05A <dbl+lbl>,
## # Ulke <chr>, cinsiyet <chr>, teknolojik_imkan <dbl+lbl>,
## # kitap_sayisi <dbl+lbl>, std_resid <dbl>, leverage <dbl>, cooksD <dbl>
Moderasyon Analizinin Yapılması
moderation_an <- lm(kitap_sayisi~teknolojik_imkan*cinsiyet, data = pirls_yeni)
summary(moderation_an)
##
## Call:
## lm(formula = kitap_sayisi ~ teknolojik_imkan * cinsiyet, data = pirls_yeni)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.00651 -0.91754 -0.00651 0.99349 2.38685
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.19589 0.04400 72.634 < 2e-16 ***
## teknolojik_imkan -0.27835 0.03255 -8.550 < 2e-16 ***
## cinsiyetMale 0.20398 0.06286 3.245 0.00118 **
## teknolojik_imkan:cinsiyetMale -0.11501 0.04698 -2.448 0.01439 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.154 on 12449 degrees of freedom
## Multiple R-squared: 0.01723, Adjusted R-squared: 0.017
## F-statistic: 72.76 on 3 and 12449 DF, p-value: < 2.2e-16
library(effectsize)
cohens_f_squared(moderation_an)
## # Effect Size for ANOVA (Type I)
##
## Parameter | Cohen's f2 (partial) | 95% CI
## --------------------------------------------------------------
## teknolojik_imkan | 0.02 | [0.01, Inf]
## cinsiyet | 6.46e-04 | [0.00, Inf]
## teknolojik_imkan:cinsiyet | 4.81e-04 | [0.00, Inf]
##
## - One-sided CIs: upper bound fixed at [Inf].
library(mediation)
tur_data <- pirls_yeni%>% filter(Ulke == "Turkiye")
sgp_data <- pirls_yeni %>% filter(Ulke == "Singapur")
library(mediation)
mod_1 <- lm(kitap_sayisi ~ teknolojik_imkan, data = pirls_yeni)
mod_2 <- lm(ASRREA01 ~ teknolojik_imkan + kitap_sayisi, data = pirls_yeni)
med_1 <- mediate(
model.m = mod_1,
model.y = mod_2,
sims = 1000,
boot = TRUE,
treat = "teknolojik_imkan",
mediator = "kitap_sayisi"
)
summary(med_1)
##
## Causal Mediation Analysis
##
## Nonparametric Bootstrap Confidence Intervals with the Percentile Method
##
## Estimate 95% CI Lower 95% CI Upper p-value
## ACME -7.96767 -9.21507 -6.77327 < 2.2e-16 ***
## ADE -22.68203 -26.35479 -19.00114 < 2.2e-16 ***
## Total Effect -30.64969 -34.35003 -26.69542 < 2.2e-16 ***
## Prop. Mediated 0.25996 0.21884 0.30390 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Sample Size Used: 12453
##
##
## Simulations: 1000
Başta ülkeleri tek bir sette topladığım için analizler karıştı. Geri dönüp baştan başayamadığım için filter fonksiyonunu kullanarak ilerlemeye çalıştım fakat bazı yerlerde iki ülke tek bir ülkeymiş gibi analize dahil oldu.