การประเมินโมเดลขั้นสุดท้าย

R สำหรับผู้ใช้ SAS

Melinda Higgins, PhD

Research Professor/Senior Biostatistician Emory University

แบบฝึกหัดท้ายบท

สรุปคอร์ส

  • รันโมเดล regression

    • สำหรับตัวทำนายที่แตกต่างกัน
    • สำหรับกลุ่มที่แตกต่างกัน
  • เลือกโมเดลที่ดีที่สุด

    • บันทึกผลลัพธ์ของโมเดล
    • ดึงและแสดงค่าสถิติความพอดี

แสดงทักษะของคุณ

  • ประเมินและเปรียบเทียบโมเดล

    • โดยใช้การแสดงผลเชิงกราฟิก
  • รายงานความสัมพันธ์ที่ดีที่สุด

    • ระหว่างตัวแปร
    • ภาพรวมและแยกตามกลุ่ม
R สำหรับผู้ใช้ SAS

การเปรียบเทียบโมเดล

# Run lm() for diffht by bmi, save model
lmdiffhtbmi <- lm(diffht ~ bmi,
                  data = daviskeep)

# Run lm() for diffht by weight, save model
lmdiffhtwt <- lm(diffht ~ weight,
                 data = daviskeep)
# Run summary() for each model, save results
smrylmdiffhtbmi <- summary(lmdiffhtbmi)
smrylmdiffhtwt <- summary(lmdiffhtwt)
R สำหรับผู้ใช้ SAS

การเปรียบเทียบโมเดล

# Display r.squared for weight model
smrylmdiffhtwt$r.squared
# Display r.squared for bmi model
smrylmdiffhtbmi$r.squared
# Compare AICs for both models
AIC(lmdiffhtbmi, lmdiffhtwt)

[1] 0.003281645

[1] 0.00121824
            df      AIC
lmdiffhtbmi  3 788.0816
lmdiffhtwt   3 787.7052
R สำหรับผู้ใช้ SAS

โมเดลแยกตามกลุ่ม — ชายและหญิง

# Plot diffht by weight by sex
ggplot(daviskeep,
       aes(diffht, weight)) +
  geom_point() +
  geom_smooth(method = "lm") +
  facet_wrap(vars(sex)) +
  ggtitle("Height differences
          predicted by weight,
          model fit by sex")

กราฟ diffht ตาม weight แยกตาม sex

R สำหรับผู้ใช้ SAS

การถดถอยบน subset

ตัวเลือก where ใน SAS proc reg ที่คล้ายกับตัวเลือก subset ของฟังก์ชัน lm ใน R

R สำหรับผู้ใช้ SAS

ตัวเลือก where ใน SAS proc reg ที่คล้ายกับตัวเลือก subset ของฟังก์ชัน lm ใน R

R สำหรับผู้ใช้ SAS

สร้างโมเดลสำหรับ subset

# lm() of diffht by weight for females
lmdiffhtwtF <- lm(diffht ~ weight,
                  subset = (sex == "F"),
                  data = daviskeep)

# lm() of diffht by weight for males
lmdiffhtwtM <- lm(diffht ~ weight,
                  subset = (sex == "M"),
                  data = daviskeep)
# Run summary() for each model save results
smrylmdiffhtwtF <- summary(lmdiffhtwtF)
smrylmdiffhtwtM <- summary(lmdiffhtwtM)
R สำหรับผู้ใช้ SAS

สร้างโมเดลสำหรับ subset

# r.squared for females only model
smrylmdiffhtwtF$r.squared
# r.squared for males only model
smrylmdiffhtwtM$r.squared

[1] 4.00807e-05

[1] 0.00804139
R สำหรับผู้ใช้ SAS

มาสรุปด้วยการสร้างโมเดลพยากรณ์อายุของหอยเป๋าฮื้อกัน!

R สำหรับผู้ใช้ SAS

Preparing Video For Download...