body {
  font-family: "Arial", sans-serif; 
  font-size: 16px; 
  line-height: 1.6;
  color: #333;
}
h1, h2, h3, h4, h5, h6 {
  font-family: "Georgia", serif;
  color: #0056b3; 
}
code {
  font-family: "Courier New", monospace; 
  background-color: #f4f4f4;
  padding: 2px 5px;
  border-radius: 4px;
}

ODEV 2 - Kayip Veri

  • Bu odevde, TIMSS 2015 uygulamasina ait bir kitapcigin Turkiye ve Amerika verilerini kullanacaksiniz.

R Paketleri

library(naniar)
library(ggplot2)
library(car)
library(dplyr)
library(knitr)
library(ggplot2)
library(missMethods)
library(mice)
library(psych)
library(haven)
library(finalfit)
library(mvdalab)
library(tidyverse)
library(mvtnorm)
library(summarytools)
library(DT)

SORU a.

  • Veri seti adi: “TRUSA.RDS”. Bu veri setini R ortamina aktariniz.
TRUSA <- readRDS("C:/Users/User/Desktop/TRUSA.RDS")
head(TRUSA)
##   IDSTUD IDBOOK M042182 M042081 M042049 M042052 M042076 M042302A M042302B
## 1  10210      1       0       0       1       1       1        0        0
## 2  10224      1       1       0       1       1       0        0        0
## 3  20302      1       0       0       0       0       1        0        0
## 4  20316      1       1       0       0       1       0        0        0
## 5  30412      1       0       0       0       0       1        0        0
## 6  30426      1       0       1       1       1       1        0        0
##   M042302C M042100 M042202 M042240 M042093 M042271 M042268 M042159 M042164
## 1        1       0       1       1       0       0       0       1       0
## 2        0       1       1       1       0       0       1       0       0
## 3        0       1       0       1       0       1       0       1       0
## 4        0       1       1       1       0       0       0       1       0
## 5        0       0       1       0       0       1       0       0       0
## 6        0       1       0       1       0       1       1       0       0
##   M042167 M062208 M062208A M062208B M062208C M062208D M062153 M062111A M062111B
## 1       0       0        1        1        0        0       0        0        0
## 2       1       1        1        1        1        1       1        1        1
## 3       0       0        1        0        1        0       0        0        0
## 4       1       0        0        1        0        0       0        0        0
## 5       0       0        1        0        0        1       0        0        0
## 6       1       1        1        1        1        1       1        0        0
##   M062237 M062314 M062074 M062183 M062202 M062246 M062286 M062325 M062106
## 1       0       0       1       0       0       0       0       0       0
## 2       0       0       0       1       1       0       0       0       0
## 3       0       0       0       0       0       0       0       1       0
## 4       0       0       0       0       0       0       1       1       0
## 5       0       0       1       0       0       0       0       0       0
## 6       0       0       1       1       1       0       0       1       1
##   M062124 CNT
## 1       0 TUR
## 2       0 TUR
## 3       0 TUR
## 4       1 TUR
## 5       0 TUR
## 6       1 TUR

SORU b.

  • Veri setinde eksik veri olup olmadigini kontrol ediniz.
summary(TRUSA)
##      IDSTUD            IDBOOK     M042182          M042081      
##  Min.   :  10210   Min.   :1   Min.   :0.0000   Min.   :0.0000  
##  1st Qu.: 590509   1st Qu.:1   1st Qu.:0.0000   1st Qu.:0.0000  
##  Median :1190515   Median :1   Median :1.0000   Median :0.0000  
##  Mean   :1185989   Mean   :1   Mean   :0.5639   Mean   :0.3753  
##  3rd Qu.:1770612   3rd Qu.:1   3rd Qu.:1.0000   3rd Qu.:1.0000  
##  Max.   :2460615   Max.   :1   Max.   :1.0000   Max.   :1.0000  
##     M042049          M042052          M042076          M042302A    
##  Min.   :0.0000   Min.   :0.0000   Min.   :0.0000   Min.   :0.000  
##  1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.000  
##  Median :1.0000   Median :1.0000   Median :0.0000   Median :0.000  
##  Mean   :0.6125   Mean   :0.6325   Mean   :0.4752   Mean   :0.364  
##  3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:1.000  
##  Max.   :1.0000   Max.   :1.0000   Max.   :1.0000   Max.   :1.000  
##     M042302B         M042302C         M042100         M042202      
##  Min.   :0.0000   Min.   :0.0000   Min.   :0.000   Min.   :0.0000  
##  1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.000   1st Qu.:0.0000  
##  Median :0.0000   Median :0.0000   Median :1.000   Median :1.0000  
##  Mean   :0.3136   Mean   :0.1164   Mean   :0.695   Mean   :0.6525  
##  3rd Qu.:1.0000   3rd Qu.:0.0000   3rd Qu.:1.000   3rd Qu.:1.0000  
##  Max.   :1.0000   Max.   :1.0000   Max.   :1.000   Max.   :1.0000  
##     M042240          M042093          M042271          M042268      
##  Min.   :0.0000   Min.   :0.0000   Min.   :0.0000   Min.   :0.0000  
##  1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.0000  
##  Median :1.0000   Median :0.0000   Median :1.0000   Median :0.0000  
##  Mean   :0.6368   Mean   :0.1781   Mean   :0.5578   Mean   :0.2815  
##  3rd Qu.:1.0000   3rd Qu.:0.0000   3rd Qu.:1.0000   3rd Qu.:1.0000  
##  Max.   :1.0000   Max.   :1.0000   Max.   :1.0000   Max.   :1.0000  
##     M042159          M042164           M042167          M062208      
##  Min.   :0.0000   Min.   :0.00000   Min.   :0.0000   Min.   :0.0000  
##  1st Qu.:0.0000   1st Qu.:0.00000   1st Qu.:0.0000   1st Qu.:0.0000  
##  Median :1.0000   Median :0.00000   Median :0.0000   Median :1.0000  
##  Mean   :0.6838   Mean   :0.01129   Mean   :0.3223   Mean   :0.5508  
##  3rd Qu.:1.0000   3rd Qu.:0.00000   3rd Qu.:1.0000   3rd Qu.:1.0000  
##  Max.   :1.0000   Max.   :1.00000   Max.   :1.0000   Max.   :1.0000  
##     M062208A         M062208B         M062208C         M062208D    
##  Min.   :0.0000   Min.   :0.0000   Min.   :0.0000   Min.   :0.000  
##  1st Qu.:1.0000   1st Qu.:0.0000   1st Qu.:1.0000   1st Qu.:0.000  
##  Median :1.0000   Median :1.0000   Median :1.0000   Median :1.000  
##  Mean   :0.8714   Mean   :0.6916   Mean   :0.7837   Mean   :0.689  
##  3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:1.000  
##  Max.   :1.0000   Max.   :1.0000   Max.   :1.0000   Max.   :1.000  
##     M062153          M062111A         M062111B         M062237     
##  Min.   :0.0000   Min.   :0.0000   Min.   :0.0000   Min.   :0.000  
##  1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.000  
##  Median :1.0000   Median :0.0000   Median :0.0000   Median :0.000  
##  Mean   :0.5334   Mean   :0.4162   Mean   :0.2919   Mean   :0.199  
##  3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:0.000  
##  Max.   :1.0000   Max.   :1.0000   Max.   :1.0000   Max.   :1.000  
##     M062314          M062074          M062183          M062202      
##  Min.   :0.0000   Min.   :0.0000   Min.   :0.0000   Min.   :0.0000  
##  1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.0000  
##  Median :0.0000   Median :0.0000   Median :0.0000   Median :1.0000  
##  Mean   :0.1755   Mean   :0.4092   Mean   :0.3632   Mean   :0.5604  
##  3rd Qu.:0.0000   3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:1.0000  
##  Max.   :1.0000   Max.   :1.0000   Max.   :1.0000   Max.   :1.0000  
##     M062246          M062286           M062325          M062106     
##  Min.   :0.0000   Min.   :0.00000   Min.   :0.0000   Min.   :0.000  
##  1st Qu.:0.0000   1st Qu.:0.00000   1st Qu.:0.0000   1st Qu.:0.000  
##  Median :0.0000   Median :0.00000   Median :1.0000   Median :0.000  
##  Mean   :0.2693   Mean   :0.05647   Mean   :0.5117   Mean   :0.404  
##  3rd Qu.:1.0000   3rd Qu.:0.00000   3rd Qu.:1.0000   3rd Qu.:1.000  
##  Max.   :1.0000   Max.   :1.00000   Max.   :1.0000   Max.   :1.000  
##     M062124           CNT           
##  Min.   :0.0000   Length:1151       
##  1st Qu.:0.0000   Class :character  
##  Median :0.0000   Mode  :character  
##  Mean   :0.4387                     
##  3rd Qu.:1.0000                     
##  Max.   :1.0000
sum(is.na(TRUSA))      # YOK
## [1] 0
colSums(is.na(TRUSA))  # YOK
##   IDSTUD   IDBOOK  M042182  M042081  M042049  M042052  M042076 M042302A 
##        0        0        0        0        0        0        0        0 
## M042302B M042302C  M042100  M042202  M042240  M042093  M042271  M042268 
##        0        0        0        0        0        0        0        0 
##  M042159  M042164  M042167  M062208 M062208A M062208B M062208C M062208D 
##        0        0        0        0        0        0        0        0 
##  M062153 M062111A M062111B  M062237  M062314  M062074  M062183  M062202 
##        0        0        0        0        0        0        0        0 
##  M062246  M062286  M062325  M062106  M062124      CNT 
##        0        0        0        0        0        0
any_na(TRUSA)    # FALSE → YOK
## [1] FALSE
n_miss(TRUSA)    # Kayip veri orani hesaplama → %0
## [1] 0

SORU c.

  • Kitapciktaki 35 maddenin toplamini hesaplayarak veri setine yeni bir SUTUN olarak ekleyiniz.
TRUSA$Madde_Toplam <- rowSums(select(TRUSA, starts_with("M0")), na.rm = T)
head(TRUSA)
##   IDSTUD IDBOOK M042182 M042081 M042049 M042052 M042076 M042302A M042302B
## 1  10210      1       0       0       1       1       1        0        0
## 2  10224      1       1       0       1       1       0        0        0
## 3  20302      1       0       0       0       0       1        0        0
## 4  20316      1       1       0       0       1       0        0        0
## 5  30412      1       0       0       0       0       1        0        0
## 6  30426      1       0       1       1       1       1        0        0
##   M042302C M042100 M042202 M042240 M042093 M042271 M042268 M042159 M042164
## 1        1       0       1       1       0       0       0       1       0
## 2        0       1       1       1       0       0       1       0       0
## 3        0       1       0       1       0       1       0       1       0
## 4        0       1       1       1       0       0       0       1       0
## 5        0       0       1       0       0       1       0       0       0
## 6        0       1       0       1       0       1       1       0       0
##   M042167 M062208 M062208A M062208B M062208C M062208D M062153 M062111A M062111B
## 1       0       0        1        1        0        0       0        0        0
## 2       1       1        1        1        1        1       1        1        1
## 3       0       0        1        0        1        0       0        0        0
## 4       1       0        0        1        0        0       0        0        0
## 5       0       0        1        0        0        1       0        0        0
## 6       1       1        1        1        1        1       1        0        0
##   M062237 M062314 M062074 M062183 M062202 M062246 M062286 M062325 M062106
## 1       0       0       1       0       0       0       0       0       0
## 2       0       0       0       1       1       0       0       0       0
## 3       0       0       0       0       0       0       0       1       0
## 4       0       0       0       0       0       0       1       1       0
## 5       0       0       1       0       0       0       0       0       0
## 6       0       0       1       1       1       0       0       1       1
##   M062124 CNT Madde_Toplam
## 1       0 TUR           10
## 2       0 TUR           18
## 3       0 TUR            8
## 4       1 TUR           11
## 5       0 TUR            6
## 6       1 TUR           21
  • 3 ile 37 araliginda maddeler 1-0 kodlu sekilde yer almaktadir.
  • Bu sekilde de yapilabilir fakat “MO” ile maddeler basladigi icin bu da kullanilabilir.
  • Ozellikle buyuk veri setlerinde kodlar ile islemler yapildigi icin ben bu sekilde tercih ediyorum.
    • Ornegin PISA veri setinde “ST285” ile baslayan bazi anket maddeleri oluyor → ve tek tek hangi aralikta yer aliyor diye bakmak yerine → isimlendirme ile islem yapmak daha kullanisli geliyor.
  • SUTUN olarak → “Madde_Toplam” ile toplam puanlar elde edilmistir.

SORU d.

  • Toplam puanin her 2 ulkeye göre betimsel istatistiklerini hesaplayiniz.
betimsel_istatistikler <- TRUSA %>%
  group_by(CNT) %>%
  summarise(
    Gozlem_Sayisi = n(),
    Ortalama = round(mean(Madde_Toplam, na.rm = T), 3),
    Medyan = round(median(Madde_Toplam, na.rm = T), 3),
    Min = round(min(Madde_Toplam, na.rm = T), 3),
    Maks = round(max(Madde_Toplam, na.rm = T), 3),
    Standart_Sapma = round(sd(Madde_Toplam, na.rm = T), 3))
betimsel_istatistikler
## # A tibble: 2 × 7
##   CNT   Gozlem_Sayisi Ortalama Medyan   Min  Maks Standart_Sapma
##   <chr>         <int>    <dbl>  <dbl> <dbl> <dbl>          <dbl>
## 1 TUR             435     13.5     11     2    32           7.57
## 2 USA             716     17.0     17     1    34           7.53
  • Ilk donemde ogrendigimiz fonksiyon ile bu islem gerceklestirilmistir.

  • Betimsel istatistiklerden: n (gozlem sayisi), mean (ortalama), median (medyan), min (en dusuk), max (ek yuksek) ve sd (standart sapma) istatistikleri elde edilmistir.

  • Farklı bir formatta DT paketi ile tabloyu elde etme:

datatable(betimsel_istatistikler, options = list(pageLength = 5), caption = "Betimsel Istatistikler")

SORU e.

  • Toplam puanin, Turkiye ve ABD orneklemlerinde farklilasip farklilasmadigini t testi ile test ediniz.
TUR <- TRUSA %>% filter(CNT == "TUR") %>% pull(Madde_Toplam)
ABD <- TRUSA %>% filter(CNT == "USA") %>% pull(Madde_Toplam)
levene_test <- leveneTest(Madde_Toplam ~ CNT, data = TRUSA)
t_test_sonuc <- t.test(TUR, ABD, var.equal = T)
list(
  Varyans_Homojenligi = levene_test,
  T_Testi_Sonucu = t_test_sonuc)
## $Varyans_Homojenligi
## Levene's Test for Homogeneity of Variance (center = median)
##         Df F value Pr(>F)
## group    1  0.1707 0.6796
##       1149               
## 
## $T_Testi_Sonucu
## 
##  Two Sample t-test
## 
## data:  TUR and ABD
## t = -7.8348, df = 1149, p-value = 1.064e-14
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -4.493049 -2.693382
## sample estimates:
## mean of x mean of y 
##  13.45287  17.04609
  • YORUM: F = 0,171 p = 0,680 (Istatistiksel olarak manidar DEGIL)
  • Varyanslar ESIT! t = -7,824, sd = 912,31 ve p = 0,000 Ortalama(TUR) = 13,453 ve Ortalama(USA) = 17,046 SONUC: TUR ve USA gruplarinin toplam madde puanlari arasinda istatistiksel olarak manidar bir fark var. TUR toplam madde puan ortalamasi USA’ye gore daha DUSUK.

SORU f.

  • Veri setinde %5, %10 ve %15 oraninda eksik veriler olusturunuz.
set.seed(123) 
M0_columns <- TRUSA[, grepl("^M0", names(TRUSA))]
TRUSA_5 <- delete_MCAR(M0_columns, p = 0.05)      # %5 orani
TRUSA_5 <- cbind(TRUSA_5, CNT = TRUSA$CNT)        # %5 orani
TRUSA_10 <- delete_MCAR(M0_columns, p = 0.10)     # %10 orani
TRUSA_10 <- cbind(TRUSA_10, CNT = TRUSA$CNT)      # %10 orani
TRUSA_15 <- delete_MCAR(M0_columns, p = 0.15)     # %15 orani
TRUSA_15 <- cbind(TRUSA_15, CNT = TRUSA$CNT)      # %15 orani

SORU g.

  • Olusturulan eksik veri setlerinde once eksik verinin RASTGELE olup olmadigini test ediniz.
  • Ardindan, LISTE bazinda silme yontemiyle eksik verileri temizleyerek e seceneginde gerceklestirdiginiz t testini tekrarlayıniz.
  • Tam veri ile elde edilen sonuclarla karsilastiriniz.
mcar_test(TRUSA_5)
## # A tibble: 1 × 4
##   statistic    df p.value missing.patterns
##       <dbl> <dbl>   <dbl>            <int>
## 1     1648. 19772       1              594
mcar_test(TRUSA_10)
## # A tibble: 1 × 4
##   statistic    df p.value missing.patterns
##       <dbl> <dbl>   <dbl>            <int>
## 1     5909. 32386       1             1008
mcar_test(TRUSA_15)
## # A tibble: 1 × 4
##   statistic    df p.value missing.patterns
##       <dbl> <dbl>   <dbl>            <int>
## 1     9136. 34889       1             1138
  • Eksik verileri LISTE BAZINDA silme:
TRUSA_5 <- na.omit(TRUSA_5)
TRUSA_10 <- na.omit(TRUSA_10)
TRUSA_15 <- na.omit(TRUSA_15)
ekle_madde_toplam <- function(veri) {
  veri %>%
    mutate(Madde_Toplam = rowSums(select(., starts_with("M0")), na.rm = TRUE))
}
TRUSA_5 <- ekle_madde_toplam(TRUSA_5)
TRUSA_10 <- ekle_madde_toplam(TRUSA_10)
TRUSA_15 <- ekle_madde_toplam(TRUSA_15)
  • t testini tekrarlama:
asil <- t.test(TRUSA$Madde_Toplam[TRUSA$CNT == "TUR"], 
               TRUSA$Madde_Toplam[TRUSA$CNT == "USA"], 
               paired = F, var.equal = T)
miss_5 <- t.test(TRUSA_5$Madde_Toplam[TRUSA_5$CNT == "TUR"], 
                 TRUSA_5$Madde_Toplam[TRUSA_5$CNT == "USA"], 
                 paired = F, var.equal = T)
miss_10 <- t.test(TRUSA_10$Madde_Toplam[TRUSA_10$CNT == "TUR"], 
                  TRUSA_10$Madde_Toplam[TRUSA_10$CNT == "USA"], 
                  paired = F, var.equal = T)
miss_15 <- t.test(TRUSA_15$Madde_Toplam[TRUSA_15$CNT == "TUR"], 
                  TRUSA_15$Madde_Toplam[TRUSA_15$CNT == "USA"], 
                  paired = F, var.equal = T)
t_test_sonuclari <- data.frame(
  Veri_Seti = c("Tam Veri", "Eksik Veri %5", "Eksik Veri %10", "Eksik Veri %15"),
  t_Degeri = c(asil$statistic, miss_5$statistic, miss_10$statistic, miss_15$statistic),
  p_Degeri = c(asil$p.value, miss_5$p.value, miss_10$p.value, miss_15$p.value))
print(t_test_sonuclari)
##        Veri_Seti    t_Degeri     p_Degeri
## 1       Tam Veri  -7.8347837 1.063776e-14
## 2  Eksik Veri %5  -3.1531982 1.907734e-03
## 3 Eksik Veri %10   0.5497133 5.863325e-01
## 4 Eksik Veri %15 -23.5000000 1.805871e-03
  • DT paketi ile tablo:
t_test_sonuclari %>%
  datatable(
    options = list(
      pageLength = 5,
      dom = 't',
      columnDefs = list(list(className = 'dt-center', targets = "_all"))),
    rownames = F,
    caption = "Eksik Veri Setleri icin t-Testi Sonuclari"
  ) %>%
  formatRound(columns = c("t_Degeri", "p_Degeri"), digits = 3)
  • Eksik Veri %10’da p > 0.05 oldugu icin gruplar arasinda manidar bir fark YOK.

  • Tam veri ve %5, %15 eksik verilerde MANIDAR fark var (p < 0.05).

  • Eksik veri %5 → Sonuclar MANIDAR ama t degeri KUCULdu (etki AZALDI).

  • Eksik veri %10 → Sonuçlar tamamen degisti, fark KAYBOLDU (p > 0.05).

  • Eksik veri %15 → t degeri ARTTI, cok fazla veri kaybı var ve dagilim bozulmus olabilir.

  • Eger eksik veri MCAR degilse → yani rastgele OLMAYAN eksik veri varsa → sonuclari ciddi sekilde degistirebilir.

  • Ozellikle %10 eksik veri setinde manidar farkin kaybolmasi → verilerin eksikliginin analiz sonucunu → BOZABILECEGINI gosterebilir.

  • %15 eksik veri setinde t degeri COK ASIRI → bu da veri kaybının ciddi etki ettigini gosterebilir.

SORU h.

  • f seceneginde olusturulan veri setlerindeki eksik verileri, belirlediginiz bir kayip veri atama yontemiyle doldurunuz.
  • Daha sonra, e seceneginde gerceklestirdiginiz t testini tekrar ediniz ve tam veri ile elde edilen sonuclarla karsilastiriniz.
  • Veri seti 1-0 oldugu icin ppm ile doldurma:
set.seed(123)
TRUSA_5_imp <- mice(TRUSA_5, m = 5, method = "pmm", maxit = 50)
## 
##  iter imp variable
##   1   1
##   1   2
##   1   3
##   1   4
##   1   5
##   2   1
##   2   2
##   2   3
##   2   4
##   2   5
##   3   1
##   3   2
##   3   3
##   3   4
##   3   5
##   4   1
##   4   2
##   4   3
##   4   4
##   4   5
##   5   1
##   5   2
##   5   3
##   5   4
##   5   5
##   6   1
##   6   2
##   6   3
##   6   4
##   6   5
##   7   1
##   7   2
##   7   3
##   7   4
##   7   5
##   8   1
##   8   2
##   8   3
##   8   4
##   8   5
##   9   1
##   9   2
##   9   3
##   9   4
##   9   5
##   10   1
##   10   2
##   10   3
##   10   4
##   10   5
##   11   1
##   11   2
##   11   3
##   11   4
##   11   5
##   12   1
##   12   2
##   12   3
##   12   4
##   12   5
##   13   1
##   13   2
##   13   3
##   13   4
##   13   5
##   14   1
##   14   2
##   14   3
##   14   4
##   14   5
##   15   1
##   15   2
##   15   3
##   15   4
##   15   5
##   16   1
##   16   2
##   16   3
##   16   4
##   16   5
##   17   1
##   17   2
##   17   3
##   17   4
##   17   5
##   18   1
##   18   2
##   18   3
##   18   4
##   18   5
##   19   1
##   19   2
##   19   3
##   19   4
##   19   5
##   20   1
##   20   2
##   20   3
##   20   4
##   20   5
##   21   1
##   21   2
##   21   3
##   21   4
##   21   5
##   22   1
##   22   2
##   22   3
##   22   4
##   22   5
##   23   1
##   23   2
##   23   3
##   23   4
##   23   5
##   24   1
##   24   2
##   24   3
##   24   4
##   24   5
##   25   1
##   25   2
##   25   3
##   25   4
##   25   5
##   26   1
##   26   2
##   26   3
##   26   4
##   26   5
##   27   1
##   27   2
##   27   3
##   27   4
##   27   5
##   28   1
##   28   2
##   28   3
##   28   4
##   28   5
##   29   1
##   29   2
##   29   3
##   29   4
##   29   5
##   30   1
##   30   2
##   30   3
##   30   4
##   30   5
##   31   1
##   31   2
##   31   3
##   31   4
##   31   5
##   32   1
##   32   2
##   32   3
##   32   4
##   32   5
##   33   1
##   33   2
##   33   3
##   33   4
##   33   5
##   34   1
##   34   2
##   34   3
##   34   4
##   34   5
##   35   1
##   35   2
##   35   3
##   35   4
##   35   5
##   36   1
##   36   2
##   36   3
##   36   4
##   36   5
##   37   1
##   37   2
##   37   3
##   37   4
##   37   5
##   38   1
##   38   2
##   38   3
##   38   4
##   38   5
##   39   1
##   39   2
##   39   3
##   39   4
##   39   5
##   40   1
##   40   2
##   40   3
##   40   4
##   40   5
##   41   1
##   41   2
##   41   3
##   41   4
##   41   5
##   42   1
##   42   2
##   42   3
##   42   4
##   42   5
##   43   1
##   43   2
##   43   3
##   43   4
##   43   5
##   44   1
##   44   2
##   44   3
##   44   4
##   44   5
##   45   1
##   45   2
##   45   3
##   45   4
##   45   5
##   46   1
##   46   2
##   46   3
##   46   4
##   46   5
##   47   1
##   47   2
##   47   3
##   47   4
##   47   5
##   48   1
##   48   2
##   48   3
##   48   4
##   48   5
##   49   1
##   49   2
##   49   3
##   49   4
##   49   5
##   50   1
##   50   2
##   50   3
##   50   4
##   50   5
TRUSA_10_imp <- mice(TRUSA_10, m = 5, method = "pmm", maxit = 50)
## 
##  iter imp variable
##   1   1
##   1   2
##   1   3
##   1   4
##   1   5
##   2   1
##   2   2
##   2   3
##   2   4
##   2   5
##   3   1
##   3   2
##   3   3
##   3   4
##   3   5
##   4   1
##   4   2
##   4   3
##   4   4
##   4   5
##   5   1
##   5   2
##   5   3
##   5   4
##   5   5
##   6   1
##   6   2
##   6   3
##   6   4
##   6   5
##   7   1
##   7   2
##   7   3
##   7   4
##   7   5
##   8   1
##   8   2
##   8   3
##   8   4
##   8   5
##   9   1
##   9   2
##   9   3
##   9   4
##   9   5
##   10   1
##   10   2
##   10   3
##   10   4
##   10   5
##   11   1
##   11   2
##   11   3
##   11   4
##   11   5
##   12   1
##   12   2
##   12   3
##   12   4
##   12   5
##   13   1
##   13   2
##   13   3
##   13   4
##   13   5
##   14   1
##   14   2
##   14   3
##   14   4
##   14   5
##   15   1
##   15   2
##   15   3
##   15   4
##   15   5
##   16   1
##   16   2
##   16   3
##   16   4
##   16   5
##   17   1
##   17   2
##   17   3
##   17   4
##   17   5
##   18   1
##   18   2
##   18   3
##   18   4
##   18   5
##   19   1
##   19   2
##   19   3
##   19   4
##   19   5
##   20   1
##   20   2
##   20   3
##   20   4
##   20   5
##   21   1
##   21   2
##   21   3
##   21   4
##   21   5
##   22   1
##   22   2
##   22   3
##   22   4
##   22   5
##   23   1
##   23   2
##   23   3
##   23   4
##   23   5
##   24   1
##   24   2
##   24   3
##   24   4
##   24   5
##   25   1
##   25   2
##   25   3
##   25   4
##   25   5
##   26   1
##   26   2
##   26   3
##   26   4
##   26   5
##   27   1
##   27   2
##   27   3
##   27   4
##   27   5
##   28   1
##   28   2
##   28   3
##   28   4
##   28   5
##   29   1
##   29   2
##   29   3
##   29   4
##   29   5
##   30   1
##   30   2
##   30   3
##   30   4
##   30   5
##   31   1
##   31   2
##   31   3
##   31   4
##   31   5
##   32   1
##   32   2
##   32   3
##   32   4
##   32   5
##   33   1
##   33   2
##   33   3
##   33   4
##   33   5
##   34   1
##   34   2
##   34   3
##   34   4
##   34   5
##   35   1
##   35   2
##   35   3
##   35   4
##   35   5
##   36   1
##   36   2
##   36   3
##   36   4
##   36   5
##   37   1
##   37   2
##   37   3
##   37   4
##   37   5
##   38   1
##   38   2
##   38   3
##   38   4
##   38   5
##   39   1
##   39   2
##   39   3
##   39   4
##   39   5
##   40   1
##   40   2
##   40   3
##   40   4
##   40   5
##   41   1
##   41   2
##   41   3
##   41   4
##   41   5
##   42   1
##   42   2
##   42   3
##   42   4
##   42   5
##   43   1
##   43   2
##   43   3
##   43   4
##   43   5
##   44   1
##   44   2
##   44   3
##   44   4
##   44   5
##   45   1
##   45   2
##   45   3
##   45   4
##   45   5
##   46   1
##   46   2
##   46   3
##   46   4
##   46   5
##   47   1
##   47   2
##   47   3
##   47   4
##   47   5
##   48   1
##   48   2
##   48   3
##   48   4
##   48   5
##   49   1
##   49   2
##   49   3
##   49   4
##   49   5
##   50   1
##   50   2
##   50   3
##   50   4
##   50   5
TRUSA_15_imp <- mice(TRUSA_15, m = 5, method = "pmm", maxit = 50)
## 
##  iter imp variable
##   1   1
##   1   2
##   1   3
##   1   4
##   1   5
##   2   1
##   2   2
##   2   3
##   2   4
##   2   5
##   3   1
##   3   2
##   3   3
##   3   4
##   3   5
##   4   1
##   4   2
##   4   3
##   4   4
##   4   5
##   5   1
##   5   2
##   5   3
##   5   4
##   5   5
##   6   1
##   6   2
##   6   3
##   6   4
##   6   5
##   7   1
##   7   2
##   7   3
##   7   4
##   7   5
##   8   1
##   8   2
##   8   3
##   8   4
##   8   5
##   9   1
##   9   2
##   9   3
##   9   4
##   9   5
##   10   1
##   10   2
##   10   3
##   10   4
##   10   5
##   11   1
##   11   2
##   11   3
##   11   4
##   11   5
##   12   1
##   12   2
##   12   3
##   12   4
##   12   5
##   13   1
##   13   2
##   13   3
##   13   4
##   13   5
##   14   1
##   14   2
##   14   3
##   14   4
##   14   5
##   15   1
##   15   2
##   15   3
##   15   4
##   15   5
##   16   1
##   16   2
##   16   3
##   16   4
##   16   5
##   17   1
##   17   2
##   17   3
##   17   4
##   17   5
##   18   1
##   18   2
##   18   3
##   18   4
##   18   5
##   19   1
##   19   2
##   19   3
##   19   4
##   19   5
##   20   1
##   20   2
##   20   3
##   20   4
##   20   5
##   21   1
##   21   2
##   21   3
##   21   4
##   21   5
##   22   1
##   22   2
##   22   3
##   22   4
##   22   5
##   23   1
##   23   2
##   23   3
##   23   4
##   23   5
##   24   1
##   24   2
##   24   3
##   24   4
##   24   5
##   25   1
##   25   2
##   25   3
##   25   4
##   25   5
##   26   1
##   26   2
##   26   3
##   26   4
##   26   5
##   27   1
##   27   2
##   27   3
##   27   4
##   27   5
##   28   1
##   28   2
##   28   3
##   28   4
##   28   5
##   29   1
##   29   2
##   29   3
##   29   4
##   29   5
##   30   1
##   30   2
##   30   3
##   30   4
##   30   5
##   31   1
##   31   2
##   31   3
##   31   4
##   31   5
##   32   1
##   32   2
##   32   3
##   32   4
##   32   5
##   33   1
##   33   2
##   33   3
##   33   4
##   33   5
##   34   1
##   34   2
##   34   3
##   34   4
##   34   5
##   35   1
##   35   2
##   35   3
##   35   4
##   35   5
##   36   1
##   36   2
##   36   3
##   36   4
##   36   5
##   37   1
##   37   2
##   37   3
##   37   4
##   37   5
##   38   1
##   38   2
##   38   3
##   38   4
##   38   5
##   39   1
##   39   2
##   39   3
##   39   4
##   39   5
##   40   1
##   40   2
##   40   3
##   40   4
##   40   5
##   41   1
##   41   2
##   41   3
##   41   4
##   41   5
##   42   1
##   42   2
##   42   3
##   42   4
##   42   5
##   43   1
##   43   2
##   43   3
##   43   4
##   43   5
##   44   1
##   44   2
##   44   3
##   44   4
##   44   5
##   45   1
##   45   2
##   45   3
##   45   4
##   45   5
##   46   1
##   46   2
##   46   3
##   46   4
##   46   5
##   47   1
##   47   2
##   47   3
##   47   4
##   47   5
##   48   1
##   48   2
##   48   3
##   48   4
##   48   5
##   49   1
##   49   2
##   49   3
##   49   4
##   49   5
##   50   1
##   50   2
##   50   3
##   50   4
##   50   5
TRUSA_5_filled <- complete(TRUSA_5_imp)
TRUSA_10_filled <- complete(TRUSA_10_imp)
TRUSA_15_filled <- complete(TRUSA_15_imp)
  • Eksik veri doldurulduktan sonra t testi:
asil <- t.test(TRUSA$Madde_Toplam[TRUSA$CNT == "TUR"], 
               TRUSA$Madde_Toplam[TRUSA$CNT == "USA"], 
               paired = F, var.equal = T)
miss_5_filled <- t.test(TRUSA_5_filled$Madde_Toplam[TRUSA_5_filled$CNT == "TUR"], 
                        TRUSA_5_filled$Madde_Toplam[TRUSA_5_filled$CNT == "USA"], 
                        paired = F, var.equal = T)
miss_10_filled <- t.test(TRUSA_10_filled$Madde_Toplam[TRUSA_10_filled$CNT == "TUR"], 
                         TRUSA_10_filled$Madde_Toplam[TRUSA_10_filled$CNT == "USA"], 
                         paired = F, var.equal = T)
miss_15_filled <- t.test(TRUSA_15_filled$Madde_Toplam[TRUSA_15_filled$CNT == "TUR"], 
                         TRUSA_15_filled$Madde_Toplam[TRUSA_15_filled$CNT == "USA"], 
                         paired = F, var.equal = T)
t_test_sonuclari_filled <- data.frame(
  Veri_Seti = c("Tam Veri", "PPM ile Doldurulmus %5 Eksik Veri", "PPM ile Doldurulmus %10 Eksik Veri", "PPM ile Doldurulmus %15 Eksik Veri"),
  t_Degeri = c(asil$statistic, miss_5_filled$statistic, miss_10_filled$statistic, miss_15_filled$statistic),
  p_Degeri = c(asil$p.value, miss_5_filled$p.value, miss_10_filled$p.value, miss_15_filled$p.value))
  • t testi sonucları icin tablo:
datatable(
  t_test_sonuclari_filled,
  options = list(
    pageLength = 5, 
    dom = 't',
    columnDefs = list(list(className = 'dt-center', targets = "_all"))),
  rownames = F,
  caption = "PPM Yontemi ile Doldurulmus Eksik Veri Setleri icin t-Testi Sonuclari") %>%
  formatRound(columns = c("t_Degeri", "p_Degeri"), digits = 3)
  • Tam Veri: t = -7.835, p = 0.000 → TUR ve ABD arasında MANIDAR bir fark VAR. → Eksik veri OLMADAN yapilan en guvenilir sonuc.

  • PPM ile %5 Eksik Veri: t = -3.153, p = 0.002 → Fark hala MANIDAR → ama t degeri AZALDI. → Eksik veriyi PPM ile doldurduktan sonra → fark KORUNUYOR ancak → etki biraz ZAYIFliyor.

  • PPM ile %10 Eksik Veri: t = 0.550, p = 0.586 → TUR ve ABD arasinda MANIDAR bir fark YOK → p > 0.05 oldugu icin istatistiksel olarak manidar DEGIL. → Eksik veri oranı ARTTIKCA sonuclar degisti.

  • PPM ile %15 Eksik Veri: t = -23.500, p = 0.002 → Fark ASIRI BUYUK → Eksik veri orani COK ARTTIGINDA → PPM yontemi → ASIRI UC DEGERLERE neden olabilir. Buradaki t degeri ANORMAL FAZLA (-23.5)!!!

SORU i.

  • Eksik veri oraninin uygulanan yontemlerin performansina etkisini aciklayiniz.

LISTE Bazinda Silme

  • %5 eksik veri listwise deletion ile silindiginde → sonuc tam veriye YAKIN cikti.
  • 10 eksik veri silindiginde → p degeri 0.586 oldugu icin manidar fark KAYBOLDU.
  • %15 eksik veri silindiginde → t degeri ASIRI degisti → (-23.500)
  • Liste bazinda silme yontemi → eksik veri orani ARTTIKCA orneklem boyutunu KUCULTUYOR ve → sonuclari carpitiyor olabilir.

PPM ile Eksik Veri Doldurma

  • PPM, %5 eksik veri için liste bazinda silme ile → BENZER sonuclar uretti.
  • 10 eksik veri dolduruldugunda → p degeri 0.586 oldugu icin manidar fark KAYBOLDU (liste bazında silme ile AYNI).
  • %15 eksik veri dolduruldugunda → t degeri yine ASIRI degisti → (-23.500).
  • PPM KUCUK eksik veri oranlarinda IYI calissa da → eksik veri orani ARTTIKCA performansi DUSEBILIR.

SONUC: - %5 eksik veri için → hem LISTE bazinda silme hem de PPM kabul edilebilir. - %10 eksik veri oldugunda → manidar fark KAYBOLDU ve → yanlis bir sonuca ulasilabilir. - %15 eksik veri oldugunda → her 2 yontem de → guvenilir sonuclar vermemis olabilir.