วิธีการคำนวณค่าคงเหลือมาตรฐานใน python


คงเหลือ คือความแตกต่างระหว่างค่าที่สังเกตได้กับค่าที่คาดการณ์ไว้ใน แบบจำลองการถดถอย

มีการคำนวณดังนี้:

คงเหลือ = ค่าที่สังเกตได้ – ค่าที่คาดการณ์ไว้

หากเราพล็อตค่าที่สังเกตได้และวางทับเส้นการถดถอยที่ติดตั้งไว้ ยอดคงเหลือสำหรับ การสังเกต แต่ละครั้งจะเป็นระยะห่างแนวตั้งระหว่างการสังเกตและเส้นการถดถอย:

ตัวอย่างค่าคงเหลือในสถิติ

สารตกค้างประเภทหนึ่งที่เรามักใช้เพื่อระบุค่าผิดปกติในแบบจำลองการถดถอยเรียกว่า สารตกค้างมาตรฐาน

มีการคำนวณดังนี้:

r i = e i / s(e i ) = e i / RSE√ 1-h ii

ทอง:

  • e i : สาร ตกค้าง i
  • RSE: ข้อผิดพลาดมาตรฐานคงเหลือของแบบจำลอง
  • h ii : การเพิ่มขึ้นของการสังเกต ครั้งที่ 3

ในทางปฏิบัติ เรามักจะพิจารณาปริมาณคงเหลือที่เป็นมาตรฐานใดๆ ซึ่งมีค่าสัมบูรณ์มากกว่า 3 ว่าเป็นค่าผิดปกติ

บทช่วยสอนนี้ให้ตัวอย่างทีละขั้นตอนของวิธีคำนวณปริมาณคงเหลือที่เป็นมาตรฐานใน Python

ขั้นตอนที่ 1: ป้อนข้อมูล

ขั้นแรก เราจะสร้างชุดข้อมูลขนาดเล็กเพื่อใช้งานใน Python:

 import pandas as pd

#create dataset
df = pd. DataFrame ({' x ': [8, 12, 12, 13, 14, 16, 17, 22, 24, 26, 29, 30],
                   ' y ': [41, 42, 39, 37, 35, 39, 45, 46, 39, 49, 55, 57]})

ขั้นตอนที่ 2: ติดตั้งโมเดลการถดถอย

ต่อไป เราจะใส่ โมเดลการถดถอยเชิงเส้นอย่างง่าย :

 import statsmodels. api as sm

#define response variable
y = df[' y ']

#define explanatory variable
x = df[' x ']

#add constant to predictor variables
x = sm. add_constant (x)

#fit linear regression model
model = sm. OLS (y,x). fit ()

ขั้นตอนที่ 3: คำนวณปริมาณคงเหลือที่ได้มาตรฐาน

ต่อไป เราจะคำนวณค่าคงเหลือที่ได้มาตรฐานของแบบจำลอง:

 #create instance of influence
influence = model. get_influence ()

#obtain standardized residuals
standardized_residuals = influence. reside_studentized_internal

#display standardized residuals
print (standardized_residuals)

[ 1.40517322 0.81017562 0.07491009 -0.59323342 -1.2482053 -0.64248883
  0.59610905 -0.05876884 -2.11711982 -0.066556 0.91057211 1.26973888]

จากผลลัพธ์ เราจะเห็นว่าไม่มีสารตกค้างมาตรฐานใดเกินค่าสัมบูรณ์ที่ 3 ดังนั้นจึงไม่มีข้อสังเกตใดที่ดูเหมือนจะมีค่าผิดปกติ

ขั้นตอนที่ 4: เห็นภาพปริมาณคงเหลือที่ได้มาตรฐาน

สุดท้ายนี้ เราสามารถสร้าง Scatterplot เพื่อให้เห็นภาพค่าของตัวแปรทำนายเทียบกับค่าคงเหลือมาตรฐาน:

 import matplotlib. pyplot as plt

plt. scatter (df.x, standardized_residuals)
plt. xlabel (' x ')
plt. ylabel (' Standardized Residuals ')
plt. axhline (y=0, color=' black ', linestyle=' -- ', linewidth=1)
plt. show ()

แหล่งข้อมูลเพิ่มเติม

สารตกค้างคืออะไร?
สารตกค้างที่ได้มาตรฐานคืออะไร?
วิธีการคำนวณปริมาณคงเหลือมาตรฐานใน R
วิธีการคำนวณปริมาณคงเหลือมาตรฐานใน Excel

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *