Gruplu veriyi anlamak
Hedef: Gruplara göre puanları karşılaştırırken “kaç kişinin puanı gerçekten biliniyor?” sorusunu ihmal etmemek.
1. Önce tahmin et
Bir CSV'de grup A'nın altı satırı varsa ortalama puan mutlaka altı puandan mı hesaplanır? Eksik bir değeri 0'a çevirmek sonucu nasıl değiştirir? Ders 2'de tanıdığımız tabloyu düşün.
2. Güvenli filtreleme
d <- read.csv("data/class_synthetic.csv",
na.strings=c("","NA"), stringsAsFactors=FALSE)
d$group <- factor(d$group, levels=c("A","B"))
high <- d[!is.na(d$quiz_score) & d$quiz_score >= 70, ]
high[, c("student_id","quiz_score")]
Görev: Sadece B grubundan puanı bilinen kayıtları seç. Ardından puanı 75'ten yüksek kayıtların yalnız kimliklerini bul. NA ile yapılan karşılaştırma neden sorun çıkarabilir?
3. Sayılar ve oranlar
table(d$group)
prop.table(table(d$group))
Görev: Grup büyüklüklerini ve tüm kayıtlar içindeki paylarını söyle. Bu sayıların puan ortalamasında kullanılan gözlem sayılarıyla eşit olup olmadığını incele.
4. tapply ve aggregate
tapply(d$quiz_score,d$group,mean,na.rm=TRUE)
aggregate(quiz_score ~ group,data=d,FUN=mean)
Bu iki yaklaşım aynı tür sonucu mu döndürüyor? str() ile bak. Her grupta geçerli puan sayısını tapply() kullanarak bul. Sonra puanı en az 70 olanların geçerli puanlara oranını hesaplamayı dene.
Önemli: Paydanın bütün kayıtlar mı, yalnız geçerli puanlar mı olduğunu raporda söylemelisin.
5. Complete-case seçimi
ok <- complete.cases(d[,c("study_hours","quiz_score")])
complete_data <- d[ok, ]
tapply(complete_data$quiz_score,complete_data$group,mean)
Görev: B grubunun ortalama puanı neden yalnız puana göre analizle iki değişkeni birlikte gerektiren analiz arasında farklı olabilir? Hangi kaydın dışlandığını incele ve yorumla.
6. Karşılaştırmalı grafik
means <- tapply(d$quiz_score,d$group,mean,na.rm=TRUE)
barplot(means,ylim=c(0,100),
xlab="Group",ylab="Mean quiz score",
main="Synthetic group means")
Görev: Grafik yalnız ortalamaları gösteriyor. Veri dağılımı, örneklem büyüklüğü ve belirsizlik hakkında hangi bilgileri gizliyor? Yakın iki ortalama grupların eşdeğer olduğunu kanıtlar mı?
7. Bağımsız çıkış bileti
tapplyileaggregatefarkını anlat.- Toplam grup büyüklüğü ve geçerli puan sayısını ayır.
na.rm=TRUEilecomplete.casestam aynı şey mi?- İngilizce iki cümleyle betimleyici sonuç ve sınırlılık yaz.
Evde: group,valid_n,mean_score sütunlu özet tablo oluştur. Bir değeri yalnız kopyada NA yapıp değişimi incele.