วิทยาศาสตร์ข้อมูล- ตารางถดถอย: R-Squared


R - กำลังสอง

R-Squared และ Adjusted R-Squared อธิบายว่าตัวแบบการถดถอยเชิงเส้นเหมาะสมกับจุดข้อมูลมากเพียงใด:

ตารางถดถอย - สถิติของสัมประสิทธิ์

ค่าของ R-Squared จะอยู่ระหว่าง 0 ถึง 1 เสมอ (0% ถึง 100%)

  • ค่า R-Squared สูงหมายความว่าจุดข้อมูลจำนวนมากอยู่ใกล้กับเส้นฟังก์ชันการถดถอยเชิงเส้น
  • ค่า R-Squared ต่ำหมายความว่าเส้นฟังก์ชันการถดถอยเชิงเส้นไม่พอดีกับข้อมูล

ตัวอย่างภาพของค่า R ต่ำ - ค่ากำลังสอง (0.00)

ตัวแบบการถดถอยของเราแสดงค่า R-Squared เป็นศูนย์ ซึ่งหมายความว่าเส้นฟังก์ชันการถดถอยเชิงเส้นไม่พอดีกับข้อมูล

สิ่งนี้สามารถแสดงให้เห็นได้เมื่อเราพล็อตฟังก์ชันการถดถอยเชิงเส้นผ่านจุดข้อมูลของ Average_Pulse และ Calorie_Burnage

R ต่ำ - ค่ากำลังสอง (0.00)

ตัวอย่างการมองเห็นของค่า R สูง - ค่ากำลังสอง (0.79)

อย่างไรก็ตาม หากเราพล็อตDurationและCalorie_Burnage R-Squared จะเพิ่มขึ้น ในที่นี้ เราจะเห็นว่าจุดข้อมูลอยู่ใกล้กับเส้นฟังก์ชันการถดถอยเชิงเส้น:

R ต่ำ - ค่ากำลังสอง (0.00)

นี่คือรหัสใน Python:

ตัวอย่าง

import pandas as pd
import matplotlib.pyplot as plt
from scipy import stats

full_health_data = pd.read_csv("data.csv", header=0, sep=",")

x = full_health_data["Duration"]
y = full_health_data ["Calorie_Burnage"]

slope, intercept, r, p, std_err = stats.linregress(x, y)

def myfunc(x):
 return slope * x + intercept

mymodel = list(map(myfunc, x))

print(mymodel)

plt.scatter(x, y)
plt.plot(x, mymodel)
plt.ylim(ymin=0, ymax=2000)
plt.xlim(xmin=0, xmax=200)
plt.xlabel("Duration")
plt.ylabel ("Calorie_Burnage")

plt.show()

สรุป - การคาดคะเน Calorie_Burnage ด้วย Average_Pulse

เราจะสรุปฟังก์ชันการถดถอยเชิงเส้นด้วย Average_Pulse เป็นตัวแปรอธิบายได้อย่างไร

  • ค่าสัมประสิทธิ์ 0.3296 ซึ่งหมายความว่า Average_Pulse มีผลเพียงเล็กน้อยต่อ Calorie_Burnage
  • ค่า P สูง (0.824) ซึ่งหมายความว่าเราไม่สามารถสรุปความสัมพันธ์ระหว่าง Average_Pulse และ Calorie_Burnage
  • ค่า R-Squared เท่ากับ 0 ซึ่งหมายความว่าเส้นฟังก์ชันการถดถอยเชิงเส้นไม่พอดีกับข้อมูล