เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ใช้ vtreat กับข้อมูลการเช่าจักรยาน

ในแบบฝึกหัดนี้ จะสร้าง data frame แบบ one-hot-encoded จากข้อมูลจักรยานเดือนกรกฎาคม/สิงหาคม เพื่อนำไปใช้กับ xgboost ในภายหลัง

ข้อมูล bikesJuly และ bikesAugust ถูกโหลดไว้ให้แล้ว

เพื่อความสะดวก ได้กำหนดตัวแปร vars ที่มีรายชื่อคอลัมน์ตัวแปรสำหรับโมเดลไว้ให้แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Supervised Learning ใน R: การถดถอย

ดูคอร์ส

คำแนะนำการฝึกหัด

  • โหลดแพ็กเกจ vtreat
  • ใช้ designTreatmentsZ() เพื่อสร้าง treatment plan ชื่อ treatplan สำหรับตัวแปรใน vars จาก bikesJuly (ข้อมูลสำหรับ training)
    • กำหนด flag verbose=FALSE เพื่อป้องกันไม่ให้ฟังก์ชันแสดงข้อความมากเกินไป
  • เติมช่องว่างเพื่อสร้างเวกเตอร์ newvars ที่เก็บเฉพาะชื่อตัวแปรที่ผ่านการแปลงแบบ clean และ lev จากนั้น print ผลลัพธ์
  • ใช้ prepare() เพื่อสร้าง data frame สำหรับ training แบบ one-hot-encoded ชื่อ bikesJuly.treat
    • ใช้อาร์กิวเมนต์ varRestrictions เพื่อจำกัดตัวแปรที่ใช้ให้เหลือเฉพาะที่อยู่ใน newvars
  • ใช้ prepare() เพื่อสร้าง test frame แบบ one-hot-encoded ชื่อ bikesAugust.treat จาก bikesAugust ในแบบเดียวกัน
  • เรียกใช้ str() กับ test frame ทั้งสองที่เตรียมไว้ เพื่อดูโครงสร้างของข้อมูล

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# The outcome column
(outcome <- "cnt")

# The input columns
(vars <- c("hr", "holiday", "workingday", "weathersit", "temp", "atemp", "hum", "windspeed"))

# Load the package vtreat
___

# Create the treatment plan from bikesJuly (the training data)
treatplan <- ___(___, ___, verbose = FALSE)

# Get the "clean" and "lev" variables from the scoreFrame
(newvars <- treatplan %>%
  use_series(scoreFrame) %>%        
  filter(code %in% ___) %>%  # get the rows you care about
  use_series(___))           # get the varName column

# Prepare the training data
bikesJuly.treat <- ___(___, ___,  varRestriction = ___)

# Prepare the test data
bikesAugust.treat <- ___(___, ___,  varRestriction = ___)

# Call str() on the treated data
___
___
แก้ไขและรันโค้ด