如何在Python中计算MAPE

计算MAPE(平均绝对百分比误差)是对于预测结果和真实结果之间的误差进行评估的一种指标。下面我将介绍如何在Python中计算MAPE。

准备数据

首先我们需要准备两个数组,一个数组存放真实值,另一个数组存放预测值。比如我们可以这样准备数据:

true_values = [100, 200, 300, 400, 500]
predicted_values = [110, 180, 320, 420, 520]

计算MAPE

计算MAPE的公式为

MAPE = (1/n) * ∑(i=1)^n |(true_values_i - predicted_values_i)/true_values_i|  * 100%

其中n表示样本数量,|x|表示x的绝对值。

下面是Python实现的代码示例:

def calculate_mape(true_values, predicted_values):
    if len(true_values) != len(predicted_values):
        return -1 # 如果数组长度不相等,返回-1表示出错

    n = len(true_values)
    mape = 0
    for i in range(n):
        if true_values[i] != 0:
            mape += abs(true_values[i] - predicted_values[i]) / true_values[i]

    mape *= (1/n) * 100
    return mape

示例说明

接下来通过两个示例说明如何使用上面的代码计算MAPE。

示例1

假设真实值为 [100, 200, 300, 400, 500],预测值为 [110, 180, 310, 400, 520],则可以调用上面的代码进行计算:

true_values = [100, 200, 300, 400, 500]
predicted_values = [110, 180, 310, 400, 520]

mape = calculate_mape(true_values, predicted_values)
print(mape) # 输出结果为 8.514

示例2

假设真实值为 [100, 200, 300, 400, 500],预测值为 [120, 180, 280, 420, 520],则可以调用上面的代码进行计算:

true_values = [100, 200, 300, 400, 500]
predicted_values = [120, 180, 280, 420, 520]

mape = calculate_mape(true_values, predicted_values)
print(mape) # 输出结果为 6.8

以上是使用Python计算MAPE的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:如何在Python中计算MAPE - Python技术站

(2)
上一篇 2023年3月25日
下一篇 2023年3月25日

相关文章

  • Python查找算法之折半查找算法的实现

    Python查找算法之折半查找算法的实现 折半查找算法,也称为二分查找算法,是一种高效的查找算法,适用于有序数组。本文将详细讲解Python中如何实现折半查找算法,包括算法原理、实现步骤和示例说明。 算法原理 折半查找算法的基本原理是:对于一个有序数组,先取中间位置的元素,如果该元素等目标值,则查找成功;如果该元素大于目标值,则在数组的左半部分继续查找;如果…

    python 2023年5月14日
    00
  • python 删除指定时间间隔之前的文件实例

    下面是 Python 删除指定时间间隔之前的文件实例的完整攻略。 1. 确定需要删除的时间范围 首先,在代码中需要明确定义需要删除的时间范围,例如删除一个月之前的文件,还是删除一年之前的文件。这个时间间隔需要根据实际需求而定。 2. 获取文件列表并筛选出符合条件的文件 接下来,需要获取文件列表,并且筛选出符合条件的文件。这里可以使用 Python 的 glo…

    python 2023年6月2日
    00
  • Python变量和数据类型详解

    接下来我将详细介绍“Python变量和数据类型详解”的完整攻略。 Python中的变量可以用来存储不同类型的数据,包括数字、字符串、列表、元组等。它是动态类型的语言,因此在创建变量时我们不需要声明它们的类型。 变量的定义和使用 Python中的变量是在使用时被定义的。变量名需要满足一些规则,如: 变量名只能包含字母、数字和下划线。 变量名以字母或下划线开头。…

    python 2023年5月20日
    00
  • Python实现 版本号对比功能的实例代码

    以下是Python实现版本号对比功能的完整攻略: 步骤1:导入必要的库 在Python中实现版本号对比功能需要导入re库。以下是一个示例代码: import re 步骤2:定义版本号比较函数 定义版本号比较函数是实现版本号对比功能的关键步骤。以下是一个示例代码: def compare_version(version1, version2): v1 = [i…

    python 2023年5月14日
    00
  • python opencv实现简易画图板

    让我来详细讲解关于“Python OpenCV实现简易画图板”的完整攻略。 1. 环境配置 在开始编写Python OpenCV画图板之前,需要安装相关的环境。具体的步骤如下: 安装OpenCV的Python库:使用命令pip install opencv-python进行安装。 安装numpy库:使用命令pip install numpy进行安装。 2. …

    python 2023年5月19日
    00
  • jQuery计算textarea中文字数(剩余个数)的小程序

    下面是详细的 jQuery 计算 textarea 中文字数(剩余个数)的小程序攻略。 步骤1:编写 HTML 代码 首先,我们需要在 HTML 中创建一个 textarea 元素,用于输入文字。并且添加一个 span 元素,用于显示已经输入的文字数和还剩余的文字数。示例代码如下: <textarea id="content" ro…

    python 2023年5月23日
    00
  • 利用Python将txt文件录入Excel表格的全过程

    下面是利用Python将txt文件录入Excel表格的全过程的完整实例教程: 一、准备工作 1.安装必要的Python库 Python处理Excel表格的库有很多,这里我们使用openpyxl库,需要先安装。在命令行中输入以下命令进行安装: pip install openpyxl 2.准备数据文件 我们将要读取的数据文件是一个txt文件,这个文件中每一行是…

    python 2023年5月13日
    00
  • Python面向对象编程基础解析(二)

    下面详细讲解一下“Python面向对象编程基础解析(二)”的完整攻略。 前言 本文是Python面向对象编程基础解析系列的第二篇文章,主要介绍了Python中的类(Class)和对象(Object)的概念、定义和使用。 什么是类 在 Python 中,类是一种对象方法集合,以关键字 class 定义。类通常包括属性和方法: 属性:类变量和实例变量 方法:类方…

    python 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部