BaşlayınÜcretsiz Başlayın

Koşullu dağılımdan çekim yapmak

predict() fonksiyonunu bir modelde doğrudan çağırmak, aynı yordayıcı değerlere karşılık her zaman aynı sonucu verir. Bu da atanan (impute edilen) verilerde düşük bir değişkenliğe yol açar. Bunu artırmak ve atamanın orijinal verideki değişkenliği yansıtmasını sağlamak için koşullu dağılımdan çekim yapabiliriz. Yani, model 0.5’ten büyük bir olasılık verdiğinde her zaman 1 tahmin etmek yerine, modelin döndürdüğü olasılık ile tanımlanan bir binom dağılımından tahmin çekebiliriz.

Önceki egzersizde yazdığın kod üzerinde çalışacaksın. Aşağıdaki satır kaldırıldı:

  preds <- ifelse(preds >= 0.5, 1, 0)

Görevin, bunun yerine binom dağılımından çekim yapan bir satır eklemek. Sadece tek satır kod yeterli!

Bu egzersiz

R'de Atamaya Dayalı Eksik Veri Doldurma

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • preds değişkenini bir binom dağılımdan örnekleyerek yeniden yaz.
  • İlk argüman olarak preds'in uzunluğunu geçir.
  • size değerini 1 olarak ayarla.
  • prob argümanını modelin döndürdüğü olasılıklara ayarla.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

 impute_logreg <- function(df, formula) {
  # Extract name of response variable
  imp_var <- as.character(formula[2])
  # Save locations where the response is missing
  missing_imp_var <- is.na(df[imp_var])
  # Fit logistic regression mode
  logreg_model <- glm(formula, data = df, family = binomial)
  # Predict the response
  preds <- predict(logreg_model, type = "response")
  # Sample the predictions from binomial distribution
  preds <- ___(___, size = ___, prob = ___)
  # Impute missing values with predictions
  df[missing_imp_var, imp_var] <- preds[missing_imp_var]
  return(df)
}
Kodu Düzenle ve Çalıştır