كيفية حساب wmape في r (مع مثال)
أحد المقاييس الأكثر استخدامًا لقياس دقة التنبؤ للنموذج هو WMAPE ، والذي يرمز إلى المتوسط المرجح للنسبة المئوية للخطأ المطلق .
صيغة حساب WMAPE هي:
WMAPE = (Σ|y i – ŷ i |*w i ) / (Σy i *w i ) * 100
ذهب:
- Σ – رمز يعني “المجموع”
- y i – القيمة الحقيقية للملاحظة رقم
- ŷ i – القيمة المتوقعة للملاحظة i
- w i – وزن الملاحظة i
يمكننا تحديد الوظيفة التالية لحساب WMAPE في R:
find_WMAPE <- function (y, yhat, w){ return (sum(abs(y-yhat)*w)/sum(y*w)*100) }
يوضح المثال التالي كيفية استخدام هذه الوظيفة عمليًا.
مثال: حساب WMAPE في R
لنفترض أن لدينا إطار البيانات التالي في R الذي يحتوي على معلومات حول المبيعات الفعلية والمتوقعة لمتجر بيع بالتجزئة:
#create dataset data <- data. frame (actual=c(23, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24), forecast=c(37, 40, 46, 44, 46, 50, 45, 44, 34, 30, 22, 23)) #view dataset data current forecast 1 23 37 2 37 40 3 44 46 4 47 44 5 48 46 6 48 50 7 46 45 8 43 44 9 32 34 10 27 30 11 26 22 12 24 23
لحساب WMAPE للفرق بين المبيعات الفعلية والمتوقعة، يمكننا تحديد متجه الأوزان المراد استخدامه، ثم استخدام الدالة WMAPE التي حددناها سابقًا:
#define function to calculate WMAPE find_WMAPE <- function (y, yhat, w){ return (sum(abs(y-yhat)*w)/sum(y*w)*100) } #define weights for each month weights <- c(20, 20, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6) #calculate WMAPE find_WMAPE(df$actual, df$predicted, weights) [1] 13.27635
تبين أن WMAPE لهذا النموذج هو 13.27635% .
أي أن متوسط نسبة الخطأ المطلق المرجح بين قيم المبيعات المتوقعة وقيم المبيعات الفعلية هو 13.27635%.
لاحظ أننا قمنا بتعيين أوزان أكبر بكثير لقيمتي يناير وفبراير في هذا المثال.
اعتمادًا على مشكلتك الخاصة، يمكنك تعيين أوزان أكبر أو أقل لملاحظات مختلفة بناءً على أهمية كل خطأ في النموذج الخاص بك.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في R:
كيفية حساب MAPE في R
كيفية حساب SMAPE في R
كيفية حساب RMSE في R