การพล็อตการถดถอยแบบ Bootstrap
วิธีที่ดีในการแสดงความแปรปรวนที่อาจเกิดขึ้นในการถดถอยเชิงเส้น คือการพล็อตเส้นที่ได้จาก bootstrap replicate แต่ละชุดของ slope และ intercept ให้ทำสิ่งนี้กับ bootstrap replicate ชุดแรก 100 ชุดของ slope และ intercept (ซึ่งเก็บอยู่ใน bs_slope_reps และ bs_intercept_reps)
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Statistical Thinking in Python (ตอนที่ 2)
คำแนะนำการฝึกหัด
- สร้างอาร์เรย์ของค่า \(x\) ที่ประกอบด้วย
0และ100สำหรับพล็อตเส้นถดถอย โดยใช้ฟังก์ชันnp.array() - เขียนลูป
forเพื่อพล็อตเส้นถดถอยโดยใช้ slope และ intercept จาก pairs bootstrap replicates ทำสิ่งนี้สำหรับเส้นทั้งหมด100เส้น- เมื่อพล็อตเส้นถดถอยในแต่ละรอบของลูป
forให้นึกถึงสมการถดถอยy = a*x + bโดยaคือbs_slope_reps[i]และbคือbs_intercept_reps[i] - ระบุ keyword arguments
linewidth=0.5,alpha=0.2, และcolor='red'ในการเรียกplt.plot()
- เมื่อพล็อตเส้นถดถอยในแต่ละรอบของลูป
- สร้าง scatter plot โดยให้
illiteracyอยู่บนแกน x และfertilityอยู่บนแกน y อย่าลืมระบุ keyword argumentsmarker='.'และlinestyle='none' - กำหนดชื่อแกน ตั้งค่า margin 2% และแสดงกราฟ ส่วนนี้เตรียมไว้ให้แล้ว กด Submit เพื่อดูผลการถดถอยแบบ Bootstrap ได้เลย!
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Generate array of x-values for bootstrap lines: x
x = ____
# Plot the bootstrap lines
for i in range(____):
_ = plt.plot(____,
____*x + ____,
____=0.5, ____=0.2, ____='red')
# Plot the data
_ = ____
# Label axes, set the margins, and show the plot
_ = plt.xlabel('illiteracy')
_ = plt.ylabel('fertility')
plt.margins(0.02)
plt.show()