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

ความแปรปรวนสองส่วน

กำหนดให้มีชุดข้อมูลระยะทางเทียบกับเวลาสองชุด ชุดหนึ่งมีความเร็วน้อยมากและอีกชุดมีความเร็วสูง สังเกตว่าทั้งสองชุดอาจมีค่า standard error ของความชันเท่ากัน แต่มีค่า R-squared ของโมเดลโดยรวมต่างกัน ขึ้นอยู่กับขนาดของความชัน ("effect size") เมื่อเปรียบเทียบกับ standard error ("ความไม่แน่นอน")

หากนำชุดข้อมูลทั้งสองมาพล็อตเป็น scatter plot บนแกนเดียวกัน ความแตกต่างจะเห็นได้ชัด ความแปรปรวนที่เกิดจากความชันนั้นต่างจากความแปรปรวนที่เกิดจากการกระจายแบบสุ่มรอบเส้นแนวโน้ม ในแบบฝึกหัดนี้ เป้าหมายคือคำนวณค่า standard error และ R-squared ของชุดข้อมูลทั้งสองแล้วนำมาเปรียบเทียบกัน

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

Introduction to Linear Modeling in Python

ดูคอร์ส

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

  • สร้างและเรียก fit() กับโมเดล ols() สำหรับชุดข้อมูลทั้งสอง ได้แก่ distances1 และ distances2
  • ใช้ .bse ของโมเดล model_1 และ model_2 ร่วมกับคีย์ 'times' เพื่อดึงค่า standard error ของความชันจากแต่ละโมเดล
  • ใช้แอตทริบิวต์ .rsquared เพื่อดึงค่า R-squared จากแต่ละโมเดล
  • แสดงผล se_1, rsquared_1, se_2, rsquared_2 แล้วเปรียบเทียบด้วยสายตา

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

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

# Build and fit two models, for columns distances1 and distances2 in df
model_1 = ols(formula="____ ~ times", data=df).____()
model_2 = ols(formula="____ ~ times", data=df).____()

# Extract R-squared for each model, and the standard error for each slope
se_1 = model_1.____['times']
se_2 = model_2.____['times']
rsquared_1 = model_1.____
rsquared_2 = model_2.____

# Print the results
print('Model 1: SE = {:0.3f}, R-squared = {:0.3f}'.format(____, ____))
print('Model 2: SE = {:0.3f}, R-squared = {:0.3f}'.format(____, ____))
แก้ไขและรันโค้ด