開始使用免費開始

含多種變數型別的模型式插補

你在先前已經寫好了利用條件分配抽樣的羅吉斯迴歸插補函式,做得很棒!你已經把相當進階的統計觀念寫進程式碼裡了。這個練習中,你會把目前學到的模型式插補方法整合起來,用於 tao 資料中的不同變數型別。

你的工作是像上一章一樣遍歷變數,並插補兩個變數:

  • is_hot:由 air_temp 新建立的二元變數;若 air_temp 大於等於 26 度為 1,否則為 0;
  • humidity:你已經很熟悉的連續變數。

你需要同時使用先前學過的線性迴歸函式,以及你自己撰寫的羅吉斯迴歸函式。開始動手吧!

本練習屬於課程

在 R 中以插補處理遺漏值

檢視課程

練習說明

  • 在原本遺漏的位置把 is_hot 設為 NA
  • 使用「羅吉斯迴歸」以 sea_surface_temp 作為唯一預測變數,並用你的函式 impute_logreg() 來插補 is_hot
  • 在原本遺漏的位置把 humidity 設為 NA
  • 使用「線性迴歸」以 sea_surface_tempair_temp 作為預測變數,來插補 humidity

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Initialize missing values with hot-deck
tao_imp <- hotdeck(tao)

# Create boolean masks for where is_hot and humidity are missing
missing_is_hot <- tao_imp$is_hot_imp
missing_humidity <- tao_imp$humidity_imp

for (i in 1:3) {
  # Set is_hot to NA in places where it was originally missing and re-impute it
  ___ <- NA
  tao_imp <- ___(tao_imp, ___ ~ ___)
  # Set humidity to NA in places where it was originally missing and re-impute it
  ___ <- NA
  tao_imp <- ___(tao_imp, ___ ~ sea_surface_temp + ___)
}
編輯並執行程式碼