開始使用免費開始

樣本外測試

你的目標是根據已估計的模型,對新門市做購買預測。你會用 predict() 這個函式來檢查此目標是否可行。predict() 會取回 train.model 的參數估計值,進而對 test.data 中的反應變數進行預測。若要取得以反應變數尺度表示的預測值(也就是預測的購買機率),你需要將額外的引數 type 設為 "response"

最後,使用 ifelse() 將保留樣本的預測分類為「有購買」與「未購買」,再用 table() 將其與實際觀察到的購買情形相比較。最後,再用 prop.table() 將表中的數字轉換為相對比例。

本練習屬於課程

在 R 中建立反應模型

檢視課程

練習說明

  • 使用 predict()train.modeltest.data 做預測反應。將引數 type 設為 "response",並將結果命名為 probability
  • 將模型預測分類:若 probability 大於 0.5 則為 1,否則為 0。把結果指定給物件 predicted
  • test.data 取得 HOPPINESS 的實際購買情形,指定給物件 observed
  • 使用 table()prop.table()observedpredicted 兩個資料向量做交叉列聯與比例化。

動手互動練習

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

# Predict the purchase probabilities for test.data
probability <- ___(___, ___, type = "response") 

# Classify the predictions
predicted <- ___(probability >= ___, ___, ___) 

# Obtain the observed purchases from test.data
observed <- test.data$HOPPINESS

# Cross-tabulate observed vs. predicted purchases
___(___(predicted, observed))
編輯並執行程式碼