add symmetric mean absolute percentage error (#721)

This commit is contained in:
jope35 2018-11-02 21:08:40 +01:00 committed by Ben Letham
parent 65236ec89e
commit d432ff4a9e

View file

@ -325,6 +325,22 @@ def mape(df, w):
return rolling_mean(ape.values, w)
def smape(df, w):
"""Symmetric mean absolute percentage error
Parameters
----------
df: Cross-validation results dataframe.
w: Aggregation window size.
Returns
-------
Array of symmetric mean absolute percent errors.
"""
sape = np.abs(df['yhat']-df['y']) / ((np.abs(df['y']) + np.abs(df['yhat'])) /2)
return rolling_mean(sape.values, w)
def coverage(df, w):
"""Coverage