Łączenie imputacji i modelowania w jednej funkcji
Zawsze gdy przeprowadzasz analizę lub budujesz model na danych po imputacji, powinieneś uwzględnić niepewność wynikającą z tego procesu. Uruchomienie modelu na zbiorze danych poddanym imputacji tylko raz pomija fakt, że imputacja szacuje brakujące wartości z pewną niepewnością. Błędy standardowe takiego modelu są zazwyczaj zbyt małe. Rozwiązaniem jest wielokrotna imputacja – jednym ze sposobów jej realizacji jest bootstrapping.
W kolejnych ćwiczeniach będziesz pracować ze znajomym zbiorem danych biopics. Celem jest zastosowanie wielokrotnej imputacji metodą bootstrappingu oraz regresji liniowej, aby sprawdzić, czy – na podstawie dostępnych danych – filmy biograficzne o kobietach przynoszą niższe przychody niż te o mężczyznach.
Zacznijmy od napisania funkcji, która tworzy próbkę bootstrapową, imputuje ją i dopasowuje model regresji liniowej.
To ćwiczenie jest częścią kursu
Obsługa brakujących danych z imputacją w R
Instrukcje do ćwiczenia
- Wytnij wiersze ze zbioru
datawskazane przezindices, by pobrać próbkę z powrotem do populacji, i przypisz wynik dodata_boot. - Wykonaj imputację kNN z 5 sąsiadami na próbce bootstrapowej
data_booti przypisz wynik dodata_imp. - Dopasuj model regresji liniowej do zbioru
data_imp, który wyjaśnia zmiennąearningsza pomocąsub_sex,sub_typeiyear.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
calc_gender_coef <- function(data, indices) {
# Get bootstrap sample
data_boot <- data[___, ]
# Impute with kNN imputation
data_imp <- ___
# Fit linear regression
linear_model <- ___
# Extract and return gender coefficient
gender_coefficient <- coef(linear_model)[2]
return(gender_coefficient)
}