我正在分析预报和台站数据。在夜间,我在车站上得到负值,在预测数据上得到零值。有几天我遗漏了一些数据。
牢记这一点,我正在尝试在 Power BI 中计算 DAX 中的平均绝对百分比误差 (MAPE),以将我的预测值与我的站点数据进行比较。如果有等于或小于 0 的值,或者没有任何值,则什么也不做。但是,我没有得到我的 MAPE 的正确平均值。这是我目前的计算方式:
MAPE =
VAR Actual = AVERAGE(STATION_TABLE[GHI])
VAR Forecast = AVERAGE(FORECAST_TABLE[GHI])
VAR AbsoluteError = ABS(Actual - Forecast)
RETURN
IF(
OR(Actual <= 0, Forecast <= 0),
BLANK(),
DIVIDE(AbsoluteError, Actual)
)
然后我使用以下方法对所有数据点的 MAPE 进行平均:
MAPE_Average = AVERAGE([MAPE])
我把日期、时间、站点数据、预报数据和MAPE结果做了一个表格来比较结果。 MAPE 在计算平均值之前是正确的。
日期 | 小时 | STATION_DATA | 预测数据 | 马普 |
---|---|---|---|---|
01/01/2023 | 00:00 | - | - | - |
01/01/2023 | 01:00 | - | - | - |
01/01/2023 | 02:00 | - | - | - |
............ | ............ | ............ | ............ | ............ |
05/01/2023 | 10:00 | 55 | - | - |
05/01/2023 | 11:00 | 56 | - | - |
05/01/2023 | 12:00 | 89 | - | - |
............ | ............ | ............ | ............ | ............ |
07/01/2023 | 10:00 | - | 45 | - |
07/01/2023 | 11:00 | - | 78 | - |
07/01/2023 | 12:00 | - | 100 | - |
............ | ............ | ............ | ............ | ............ |
08/01/2023 | 13:00 | -5.0 | 45 | - |
08/01/2023 | 14:00 | -4.6 | 78 | - |
08/01/2023 | 15:00 | -5.1 | 100 | - |
………… | ............ | ............ | ............ | ............ |
09/01/2023 | 12:00 | 45 | 49 | 8.89% |
09/01/2023 | 13:00 | 56 | 51 | 8.93% |
09/01/2023 | 14:00 | 105 | 120 | 14.29% |
- | - | 总平均:300 | 总平均数:309 | 总计:3.0% |
但是,当我将此值与使用其他工具(例如 Excel)计算的 MAPE 总计进行比较时,我得到了不同的平均值。表格中的平均值是表格末尾TOTAL AVE值的MAPE结果值。所以,我没有得到整列的平均值。我分开进行的测量给出了另一个结果,这在 Excel 中和表格中都不相同。
任何人都可以帮助我确定我可能做错了什么,或者建议在 DAX 中计算 MAPE 的替代方法吗?
提前感谢您的帮助!