R에서 wmpe를 계산하는 방법(예제 포함)


모델의 예측 정확도를 측정하는 데 가장 일반적으로 사용되는 측정항목 중 하나는 WMPE 이며, 이는 가중 평균 절대 백분율 오류를 나타냅니다.

WMAPE를 계산하는 공식은 다음과 같습니다.

WMAPE = (Σ|y i – ŷ i |*wi ) / (Σy i * wi ) * 100

금:

  • Σ – “합계”를 의미하는 기호
  • y i – i 번째 관측치의 실제 값
  • ŷ i – i 번째 관측치의 예측값
  • w i – i 번째 관측치의 가중치

R에서 WMPE를 계산하기 위해 다음 함수를 정의할 수 있습니다.

 find_WMAPE <- function (y, yhat, w){
  return (sum(abs(y-yhat)*w)/sum(y*w)*100)
}

다음 예에서는 이 기능을 실제로 사용하는 방법을 보여줍니다.

예: R에서 WMPE 계산

소매점의 실제 및 예측 매출에 대한 정보가 포함된 다음과 같은 데이터 프레임이 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

이 모델의 WMPE는 13.27635% 로 나타났습니다.

즉, 예상 매출액과 실제 매출액 사이의 가중평균 절대백분율 오차는 13.27635%이다.

이 예에서는 1월과 2월 값에 훨씬 더 큰 가중치를 할당했습니다.

특정 문제에 따라 모델의 각 오류의 중요성에 따라 다양한 관찰에 더 크거나 더 작은 가중치를 할당할 수 있습니다.

추가 리소스

다음 튜토리얼에서는 R에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

R에서 MAPE를 계산하는 방법
R에서 SMPE를 계산하는 방법
R에서 RMSE를 계산하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다