Ders 6 — İlk beş dersi birleştir: bağımsız analiz
Bağımsız özel ders içeriği; UCL'nin resmî modül/program materyali değildir. Öğrencinin gerçek UCL modülü henüz doğrulanmadı. Tüm CSV gözlemleri kurgusaldır. Ek R paketi gerekmiyor. Öğretmenlik provası ve gerçek RStudio testleri kullanıcının isteğiyle ertelendi.
90 dakika. Kullanılacak veri data/class_synthetic.csv: 12 hayalî gözlem, student_id, study_hours, quiz_score, group. Ders 2–5 ile *birebir aynı CSV*.
00–10 dk · Plan
Kendi cümlenle iki soru yaz: (a) Grupların eldeki quiz puanları nasıl karşılaştırılıyor? (b) Çalışma saatleri ve puanlar arasında nasıl bir gözlenen ilişki var? Bir gözleme ve bir değişkene ne denir?
10–25 dk · Veri denetimi
scripts/analysis_starter.R dosyasını aç. getwd(), file.exists(), read.csv(), str(), dim(), is.na() kullan.
Görev 1: Grup başına toplam kayıt sayısı, study_hours / quiz_score için eksik sayıları ve iki değişkende geçerli çiftlerin sayısını açıkla.
25–42 dk · Güvenli filtreleme ve grup özetleri
Görev 2: Quiz puanı 70 veya üzerinde olan kayıtları eksik puanlı satırları almadan ayrı bir tabloda göster.
Görev 3: group, valid_n, mean_score sütunlarından oluşan bir özet veri çerçevesi üret. Her grubun paydasının neden aynı olmayabileceğini yaz. tapply() ya da aggregate() kullanılabilir.
Görev 4: Yalnız grup B ve puanı geçerli olan satırlarla ayrıca çalış; bu alt kümenin orijinal CSV'den nasıl farklı olduğunu belirt.
42–58 dk · İki grafikle anlat
Görev 5: Quiz puanının gruplara göre dağılımını boxplot ile göster. Ek olarak saat–puan ilişkisini scatterplot ile çiz. Başlık, eksen, birim, kullanılan örneklem (n) belli olmalı. Sayısal bir değişkenin tek başına dağılımını göstermek istersen üçüncü histogram seçeneği açık.
Görev 6: Scatterplot'ta complete.cases ile aynı satırdan gelen x/y çiftleri kullan; study_hours ve quiz_score için iki bağımsız !is.na filtresi oluşturma.
58–70 dk · Hata ayıklama
scripts/debug_challenge.R dosyasını aç, orijinalin bir kopyasında çalış. Bu dosya *bilerek bozuk*. İlk hata düzeltildiğinde sonraki hatalar ortaya çıkabilir.
Görev 7: En az altı kusuru bul; her biri için “hatalı kod → düzeltilmiş kod → neden” notu hazırla. Bunların bir kısmı çalışmayı durduran error, diğerleri ise sessizce yanlış sonuç üreten mantık hatasıdır.
70–85 dk · Mini rapor
templates/report_template.md içindeki başlıkları tamamla. 120–160 İngilizce kelime; araştırma sorusu, sentetik veri tanımı, hangi satırların analiz edildiği, iki sayısal bulgu, seçtiğin grafikler ve iki metodolojik sınırlama yer alsın.
Seçmeli: Gerçek modülün korelasyon/regresyon içermesi durumunda cor() ve lm() ile doğrusal ilişkiyi ayrıca ele al; nedensellik iddiası yapma. İleri teknikleri bitirmek ana dersin şartı değildir.
85–90 dk · Teslim kontrolü
- [ ] Orijinal CSV'ye dokunmadım.
- [ ]
analysis_starter.Riçindeki TODO'ları kendi kodumla doldurdum. - [ ] En az iki etiketli grafik çizdim.
- [ ] Eksik ve geçerli gözlem sayılarını açıkça belirttim.
- [ ] Altı hataya gerekçeli düzeltme yaptım.
- [ ] Raporda kurgusal veri ve nedensellik/temsil sınırlaması var.
Çıkış bileti: Bir NA satırını yanlış filtrelemek ile bir kolon adını yanlış yazmak nasıl farklı tür hatalara yol açar? İki grubun ortalaması neden küçük örneklemden genel sonuç çıkarmaz?
Çözümleri öğretmenin özel Divan rehberindedir; öğrenci ZIP'inde yoktur.
Hata ayıklama yaklaşımı
Ders 6 — Hata ayıklama görevleri ve stratejiler
Bağımsız özel ders içeriği; UCL'nin resmî modül/program materyali değildir. Öğrencinin gerçek UCL modülü henüz doğrulanmadı. Tüm CSV gözlemleri kurgusaldır. Ek R paketi gerekmiyor. Öğretmenlik provası ve gerçek RStudio testleri kullanıcının isteğiyle ertelendi.
Öğrenciyle paylaşılabilir görev açıklaması; cevap anahtarı değildir. scripts/debug_challenge.R bilerek en az 7 sorun içerir.
Hata türleri
- Path sorunu: dosya bulunmuyorsa
getwd(),list.files(),file.exists()dene. - Sütun adı sorunu:
names(d)vestr(d)ile gerçek alanı doğrula. - Eksik veri sorunu:
mean()sonucundaNAgörürsen nedenini incele. 0 yazmakla aynı şey değil. - Mantıksal filtre sorunu:
NAiçeren bir koşul yanlış gözlemleri dahil edebilir. - Gruplama sorunu:
tapply()için ikinci argümanın gerçek grup vektörü olması gerekir. - Çiftli veri sorunu: x ve y farklı satırları seçiyorsa iki bağımsız NA filtresi karışıklık yaratabilir.
- Bilimsel ifade sorunu: “gözlenen ilişki” ve “kanıtlanmış nedensellik” farklıdır.
Strateji
Bir hata iletisini olduğu gibi oku; en az şüphelendiğin ifadeyi ayrı çalıştır; veri türü ve boyutunu doğrula; tek düzeltmeden sonra dosyayı yeniden baştan çalıştır; sessiz mantık hatasını nrow(), is.na(), identical() veya stopifnot() ile görünür kıl. Orijinal dosya/CSV yerine kopya üzerinde çalış.
Mini değerlendirme
Her hata için şunu yaz: “Semptom / varsayım / test / düzeltme / öğrendim.” Yedi hatanın tümünü çözmek zorunlu değil; altı gerekçeli düzeltme temel başarı ölçütüdür.
Öğretmen özel yanıtları [[Projects/UCL 1 Sinif R Kodlama/Ders 6 Cozum Anahtari|çözüm kaydındadır]].