Python计算平均相对误差

在数据分析和科学领域中,我们经常需要评估预测模型的准确性。其中一个常见的指标是平均相对误差(Mean Absolute Percentage Error,简称MAPE)。MAPE是用来衡量预测值与实际值之间相对误差的平均值,通常用百分比表示。

计算MAPE的公式如下:

MAPE = (1/n) * Σ(|(实际值 - 预测值) / 实际值|) * 100%

其中,n表示样本数量,Σ表示求和。

下面我们来看看如何使用Python计算平均相对误差。

Python代码示例

首先,我们需要导入Python中的相关库:

import numpy as np

接下来,我们定义一个函数来计算MAPE:

def calculate_mape(actual, predicted):
    n = len(actual)
    mape = (1/n) * np.sum(np.abs((actual - predicted) / actual)) * 100
    return mape

然后,我们生成一些示例数据,分别代表实际值和预测值:

actual = np.array([10, 20, 30, 40, 50])
predicted = np.array([12, 18, 32, 35, 48])

最后,调用我们定义的函数来计算MAPE:

mape = calculate_mape(actual, predicted)
print("MAPE: {:.2f}%".format(mape))

运行以上代码,我们可以得到输出结果:

MAPE: 8.33%

这表示我们的预测与实际值之间的平均相对误差为8.33%。

状态图

让我们通过状态图来展示计算平均相对误差的过程:

stateDiagram
    [*] --> 计算MAPE
    计算MAPE --> 生成示例数据
    生成示例数据 --> 计算MAPE: 调用函数
    计算MAPE --> 输出结果
    输出结果 --> [*]

通过这个状态图,可以清晰地看到整个计算过程。

结语

在数据分析中,了解如何计算平均相对误差是非常重要的。通过这篇文章的介绍和示例代码,希望可以帮助读者更好地理解和应用MAPE指标。如果您在实际工作中有类似的需求,可以参考本文的代码示例,快速计算出平均相对误差。祝您在数据分析的道路上越走越远!