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

การพล็อตโมเดล Poisson regression

ทบทวนโครงสร้าง likelihood ของโมเดล Bayesian Poisson regression สำหรับปริมาณ \(Y\)i โดยพิจารณาสถานะวันธรรมดา \(X\)i และอุณหภูมิ \(Z\)i: \(Y\)i \(\sim Pois(l\)i) โดยที่

  • \(log(l\)i\() \; = a + b \; X\)i \(+ c \; Z\)i; ดังนั้น
  • \(l\)i\( \; = exp(a + b \; X\)i \(+ c \; Z\)i\()\)

ผลการจำลอง RJAGS จำนวน 10,000 iteration ของ posterior ของโมเดล ซึ่งเก็บไว้ใน poisson_sim พร้อมด้วย data frame ของผลลัพธ์ Markov chain มีอยู่ใน workspace แล้ว:

> head(poisson_chains, 2)
         a b.1.       b.2.          c
1 5.019807    0 -0.1222143 0.01405269
2 5.018642    0 -0.1217608 0.01407691

นำผลลัพธ์เหล่านี้มาพล็อตแนวโน้ม Poisson regression ของ posterior แนวโน้มที่ไม่เป็นเส้นตรงเหล่านี้สามารถเพิ่มลงใน ggplot() ได้ด้วย stat_function() ตัวอย่างเช่น การระบุ fun = function(x){x^2} จะแสดงเส้นแนวโน้มแบบกำลังสอง

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

การสร้างแบบจำลอง Bayesian ด้วย RJAGS

ดูคอร์ส

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

สร้าง scatterplot ของ volume ตาม hightemp โดยมีรายละเอียดดังนี้:

  • ใช้ color เพื่อแยกความแตกต่างระหว่างวันธรรมดาและวันหยุดสุดสัปดาห์
  • เพิ่มเส้นโค้งสี red ที่แสดงแนวโน้ม Poisson regression ค่าเฉลี่ย posterior \(l\)i ของความสัมพันธ์เชิงเส้นระหว่าง volume กับ hightemp สำหรับวันหยุดสุดสัปดาห์: l = exp(a + c Z)
  • เพิ่มเส้นโค้งสี turquoise3 ที่แสดงแนวโน้ม Poisson regression ค่าเฉลี่ย posterior \(l\)i ของความสัมพันธ์เชิงเส้นระหว่าง volume กับ hightemp สำหรับวันธรรมดา: l = exp((a + b.2.) + c Z)

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

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

# Plot the posterior mean regression models
ggplot(___, aes(x = ___, y = ___, color = ___)) + 
    geom_point() + 
    stat_function(fun = function(x){___(mean(___) + mean(___) * x)}, color = "red") + 
    stat_function(fun = function(x){___(mean(___) + mean(___) + mean(___) * x)}, color = "turquoise3")
แก้ไขและรันโค้ด