علم البيانات - حالة الانحدار الخطي
الحالة: استخدم Duration + Average_Pulse للتنبؤ بحرق السعرات الحرارية
قم بإنشاء جدول انحدار خطي مع معدل_النبض والمدة كمتغيرات توضيحية:
مثال
import pandas as pd
import statsmodels.formula.api as smf
full_health_data = pd.read_csv("data.csv", header=0, sep=",")
model = smf.ols('Calorie_Burnage ~ Average_Pulse + Duration', data = full_health_data)
results
= model.fit()
print(results.summary())
شرح المثال:
- قم باستيراد مكتبة statsmodels.formula.api كـ smf. Statsmodels هي مكتبة إحصائية في بايثون.
- استخدم مجموعة full_health_data.
- أنشئ نموذجًا يعتمد على المربعات الصغرى العادية باستخدام smf.ols (). لاحظ أنه يجب كتابة المتغير التوضيحي أولاً بين القوسين. استخدم مجموعة بيانات full_health_data.
- من خلال استدعاء .fit () ، تحصل على نتائج المتغير. هذا يحمل الكثير من المعلومات حول نموذج الانحدار.
- ملخص المكالمة () للحصول على جدول بنتائج الانحدار الخطي.
انتاج:
يمكن إعادة كتابة دالة الانحدار الخطي رياضيًا على النحو التالي:
Calorie_Burnage = Average_Pulse * 3.1695 + Duration * 5.8424 - 334.5194
مقرب إلى رقمين عشريين:
Calorie_Burnage = Average_Pulse * 3.17 +
Duration * 5.84 - 334.52
حدد وظيفة الانحدار الخطي في بايثون
حدد وظيفة الانحدار الخطي في بايثون لإجراء تنبؤات.
ما هو Calorie_Burnage إذا:
- متوسط النبض 110 ومدة الحصة التدريبية 60 دقيقة؟
- متوسط النبض 140 ومدة الحصة التدريبية 45 دقيقة؟
- متوسط النبض 175 ومدة الحصة التدريبية 20 دقيقة؟
مثال
def Predict_Calorie_Burnage(Average_Pulse,
Duration):
return(3.1695*Average_Pulse + 5.8434 * Duration - 334.5194)
print(Predict_Calorie_Burnage(110,60))
print(Predict_Calorie_Burnage(140,45))
print(Predict_Calorie_Burnage(175,20))
الاجابات:
- متوسط النبض 110 ومدة جلسة التدريب 60 دقيقة = 365 سعرة حرارية
- متوسط النبض 140 ومدة الحصة التدريبية 45 دقيقة = 372 سعرة حرارية
- متوسط النبض 175 ومدة الحصة التدريبية 20 دقيقة = 337 سعرة حرارية
الوصول إلى المعاملات
انظر إلى المعاملات:
- يزيد معدل حرق السعرات الحرارية بمقدار 3.17 إذا زاد معدل النبض بمقدار واحد.
- يزيد Calorie_Burnage بمقدار 5.84 إذا زادت المدة بمقدار واحد.
قم بالوصول إلى القيمة P
انظر إلى القيمة الاحتمالية لكل معامل.
- القيمة الاحتمالية هي 0.00 للنبض المتوسط والمدة والتقاطع.
- تعتبر قيمة P ذات دلالة إحصائية لجميع المتغيرات ، حيث إنها أقل من 0.05.
هنا يمكننا أن نستنتج أن متوسط النبضات والمدة لهما علاقة بـ Calorie_Burnage.
تعديل R- تربيع
توجد مشكلة في R-squared إذا كان لدينا أكثر من متغير توضيحي.
ستزداد R-squared دائمًا إذا أضفنا المزيد من المتغيرات ، ولن تنقص أبدًا.
هذا لأننا نضيف المزيد من نقاط البيانات حول دالة الانحدار الخطي.
إذا أضفنا متغيرات عشوائية لا تؤثر على Calorie_Burnage ، فإننا نجازف باستنتاج خطأ أن وظيفة الانحدار الخطي مناسبة. مربع R المعدل يضبط لهذه المشكلة.
لذلك من الأفضل النظر إلى قيمة التربيع R المعدلة إذا كان لدينا أكثر من متغير توضيحي واحد.
مربع R المعدل هو 0.814.
قيمة R-Squared دائمًا ما بين 0 إلى 1 (0٪ إلى 100٪).
- تعني قيمة R-Squared العالية أن العديد من نقاط البيانات قريبة من خط دالة الانحدار الخطي.
- تعني قيمة R-Squared المنخفضة أن خط دالة الانحدار الخطي لا يناسب البيانات جيدًا.
الخلاصة: النموذج يناسب نقطة البيانات جيدًا!
تهانينا! لقد انتهيت الآن من الوحدة النهائية لمكتبة علوم البيانات.