如何在Python中计算MAPE

yizhihongxing

计算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技术站

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

相关文章

  • Python结合Selenium简单实现Web自动化测试

    下面我将为您详细讲解“Python结合Selenium简单实现Web自动化测试”的完整攻略。 一、什么是Selenium Selenium是广泛使用的Web应用程序自动化测试工具,支持多种浏览器和多种语言编写自动化测试脚本。它提供了一种便捷的方式来在Web应用程序上执行测试操作。 二、Selenium Web自动化测试的应用场景 Web自动化测试是在Web应…

    python 2023年5月19日
    00
  • 浅谈python在提示符下使用open打开文件失败的原因及解决方法

    浅谈Python在提示符下使用open打开文件失败的原因及解决方法 在Python中,使用open函数打开文件是非常常见的操作。是,在提示符下使用open函数打开文件时,有时会出现开文件失败的情况。本文将详细讲解Python在提示符下使用open打开文件失败的原因及解决方法,包括文件路径错误、文件权限问题等。在过程中,供两个示例说明,帮助读者更好地理解ope…

    python 2023年5月13日
    00
  • python操作微信自动发消息的实现(微信聊天机器人)

    准备工作 首先需要先安装itchat库,可以通过pip安装: pip install itchat 接着在微信中扫码登录,代码如下: import itchat itchat.auto_login(hotReload=True) # 运行代码后会出现一个二维码,扫描即可登录微信 实现自动回复功能 为了实现自动回复功能,需要在itchat库的基础上编写一个回调…

    python 2023年5月19日
    00
  • 如何在Python中执行Oracle数据库的查询语句?

    在Python中,我们可以使用cx_Oracle模块连接Oracle数据库,并使用SQL语句执行查询操作。以下是如何在Python中执行Oracle数据库的查询语句的完整使用攻略,包括连接数据库、执行查询语句、获取查询结果等骤。同时,提供两个例以便更好理解如何在Python中执行Oracle数据库的查询语句。 步骤1:安装cxOracle模块 在Python…

    python 2023年5月12日
    00
  • python用户管理系统

    Python用户管理系统攻略 介绍 Python用户管理系统是一个简单的命令行程序,用于管理用户的基本信息,例如姓名,年龄,性别,爱好等。本系统可以执行以下功能: 添加用户:通过输入用户信息来添加用户。 删除用户:通过用户ID来删除用户。 更新用户信息:通过用户ID来更新用户信息。 查找用户:通过用户ID或用户姓名来查找用户。 显示所有用户信息:列出所有用户…

    python 2023年5月30日
    00
  • Python爬虫抓取技术的一些经验

    Python爬虫抓取技术的一些经验 Python爬虫是一种非常实用的Web数据采集技术,可以用于网络爬取、分析、数据挖掘、搜索引擎等多个领域。下面是一些Python爬虫抓取技术的经验。 抓取前准备工作 1.了解网站的结构、规则、数据分布情况。 2.确定数据采集的目标:需要采集哪些数据、在哪个页面等。 3.合理的编码方式和解决一些反爬虫的问题。 抓取技术要点 …

    python 2023年5月14日
    00
  • Python实现上课点名器系统

    Python实现上课点名器系统 系统介绍 本系统使用Python编写,主要用于进行班级上课点名的功能实现。具体功能如下: 随机点名:随机选择一名学生进行点名,并在屏幕上打印该学生的姓名。 全部点名:对班级全部学生进行点名,点名结果将依次在屏幕上打印出每一位学生的姓名。 按照列表点名:根据输入的学生名单进行点名,每次点名都会从列表中随机选择一名学生进行点名,直…

    python 2023年5月18日
    00
  • 树莓派 Crontab Python 脚本需要写权限

    【问题标题】:Raspberry Pi Crontab Python script needs write permission树莓派 Crontab Python 脚本需要写权限 【发布时间】:2023-04-04 02:34:01 【问题描述】: 我有一个 python 脚本,我想每 15 分钟在我的树莓派上运行一次。该脚本应该做一些事情,然后将报告发布…

    Python开发 2023年4月6日
    00
合作推广
合作推广
分享本页
返回顶部