PISA Analiz

Ödev için PISA 2022 Öğrenci Veri Seti’nden bazı değişkenler seçilmiştir.

Değişken Değişken Adı PISA Kodu
Bağımlı Matematik başarısı PV1MATH
Bağımsız Okula ait hissetme BELONG
Aracı Motivasyon EFFORT1
Düzenleyici SES ESCS

Bağımlı Değişken: Matematik Başarısı (PV1MATH). Bağımsız Değişken: Okula Ait Hissetme (BELONG). Aracı Değişken (Mediator): Motivasyon (EFFORT1). Okula ait hissetmenin başarıyı doğrudan değil, öz yeterliği artırarak etkileyip etkilemediğine bakacağız. Düzenleyici Değişken (Moderator): Sosyoekonomik Statü (ESCS). Okula ait hissetmenin başarıya etkisi, düşük SES’li öğrenciler için farklı mı, yoksa yüksek SES’li öğrenciler için mi farklı?

Hocam dosyayı knit edemediğim için bir kısmını yorum yaptım.

#pisa_veri <- read_sav("CY07_MSU_STU_QQQ.sav") 
#saveRDS(pisa_veri, "pisa_veri.rds")
#pisa_veri <- readRDS("C:/Users/Lenovo/Desktop/data/pisa_veri.rds")
#pisa_filtreli <- pisa_veri %>%
#  filter(CNT == "TUR" | CNT == "JPN") %>%
#  select(
#   CNT,        # Ülke Kodu
#    ST004D01T,  # Cinsiyet 
#    PV1MATH,    # Bağımlı (Matematik Başarısı)
#    BELONG,     # Bağımsız (Okul Ait Hissetme)
#    EFFORT1,    # Aracı (Motivasyon)
#    ESCS        # Düzenleyici (SES)
#    ) %>%
#  na.omit(CNT, PV1MATH, BELONG, EFFORT1, ESCS)
#saveRDS(pisa_filtreli, "pisa_filtreli.rds")

Değişkenleri Türkçe yapalım.

pisa_filtreli <- readRDS("C:/Users/Lenovo/Desktop/data/pisa_filtreli.rds")

pisa_temiz <- pisa_filtreli %>%
  rename(
    Ulke = CNT,
    Cinsiyet = ST004D01T,
    MatBasari = PV1MATH, 
    Aidiyet = BELONG,    
    Motivasyon = EFFORT1, 
    SES = ESCS)

Veriyi inceleyelim.

betimsel_ozet <- pisa_temiz %>%
  group_by(Ulke) %>%
  summarise(
    N = n(),
    MatBasari_Ort = mean(MatBasari, na.rm = TRUE),
    MatBasari_SS = sd(MatBasari, na.rm = TRUE),
    Aidiyet_Ort = mean(Aidiyet, na.rm = TRUE),
    Aidiyet_SS = sd(Aidiyet, na.rm = TRUE),
    Motivasyon_Ort = mean(Motivasyon, na.rm = TRUE),
    Motivasyon_SS = sd(Motivasyon, na.rm = TRUE),
    SES_Ort = mean(SES, na.rm = TRUE),
    SES_SS = sd(SES, na.rm = TRUE)) %>%
  mutate(across(where(is.numeric), round, 2))
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `across(where(is.numeric), round, 2)`.
## Caused by warning:
## ! The `...` argument of `across()` is deprecated as of dplyr 1.1.0.
## Supply arguments directly to `.fns` through an anonymous function instead.
## 
##   # Previously
##   across(a:b, mean, na.rm = TRUE)
## 
##   # Now
##   across(a:b, \(x) mean(x, na.rm = TRUE))
betimsel_ozet

İlişki ön incelemesi için korelasyon bakalım.

korelasyon_df <- pisa_temiz %>%
  select(MatBasari, Aidiyet, Motivasyon, SES) %>%
  cor()

korelasyon_df %>% round(2) 
##            MatBasari Aidiyet Motivasyon   SES
## MatBasari       1.00    0.07      -0.21  0.45
## Aidiyet         0.07    1.00       0.05  0.07
## Motivasyon     -0.21    0.05       1.00 -0.26
## SES             0.45    0.07      -0.26  1.00

İlişkiyi görselleştirelim.

corrplot(korelasyon_df, method = "circle", type = "lower")

ggplot(pisa_temiz, aes(x = Ulke, y = MatBasari, fill = Ulke)) +
  geom_boxplot(alpha = 0.7) +
  labs(
    title = "Matematik Basarısının Ulkelere Gore Dagılımı",
    y = "Matematik Basarısı",
    x = "Ulke"
  ) +
  theme_minimal()

Japonya toplam puanlarda Türkiye’den daha başarılıdır.

Bağımlı ve bağımsız değişken arasındaki ilişkiye bakalım.

ggplot(pisa_temiz, aes(x = Aidiyet, y = MatBasari, color = Ulke)) +
  geom_point(alpha = 0.3, size = 1) + 
  geom_smooth(method = "lm", se = FALSE) + 
  labs(
    title = "Okula Ait Hissetme ve Matematik Basarısı İliskisi",
    x = "Okula Ait Hissetme",
    y = "Matematik Basarısı)",
    color = "Ulke"
  ) +
  facet_wrap(~Ulke) + 
  theme_bw()
## `geom_smooth()` using formula = 'y ~ x'

Aracı değişken ve bağımlı değişken ilişkisini inceleyelim.

ggplot(pisa_temiz, aes(x = Motivasyon, y = MatBasari, color = Ulke)) +
  geom_point(alpha = 0.3, size = 1) + 
  geom_smooth(method = "lm", se = FALSE) + # Regresyon doÄŸrusu
  labs(
    title = "Motivasyon ve Matematik Basarısı İliskisi",
    x = "Motivasyon",
    y = "Matematik Başarısı",
    color = "Ulke"
  ) +
  facet_wrap(~Ulke) +
  theme_bw()
## `geom_smooth()` using formula = 'y ~ x'

Düzenleyici değişkenin etkisi için de bir ön inceleme yapalım.

ggplot(pisa_temiz, aes(x = SES, y = MatBasari, color = Ulke)) +
  geom_point(alpha = 0.3, size = 1) + 
  geom_smooth(method = "lm", se = FALSE) + 
  labs(
    title = "SES ve Matematik Basarı İliskisi",
    x = "Sosyoekonomik Statu",
    y = "Matematik Basarısı",
    color = "Ulke"
  ) +
  facet_wrap(~Ulke) +
  theme_bw()
## `geom_smooth()` using formula = 'y ~ x'