数据平滑处理(部分)

news2024/11/15 21:37:10

       一、 移动平均(Moving Average)

        是一种最简单的数据平滑方法,用于平滑时间序列数据。它通过计算一定窗口内数据点的平均值来减少噪音,同时保留数据的趋势。移动平均包括简单移动平均(SMA)或指数加权移动平均(EMA)。

        plt.rcParams['font.sans-serif'] = ['SimHei'],在整篇文章的代码中绘制图的时候加入此句代码,可以解决下图中文字标题显示不出的问题。

     1.1 简单移动平均(SMA)

        是一种通过计算数据点在一个固定窗口内的平均值来平滑数据的方法。窗口的大小决定了平滑程度。较大的窗口将导致更平滑的曲线,但会减缓对趋势的反应,而较小的窗口将更敏感地跟随数据的波动。

​        对上述代码的理解:蓝色的折线图表示的就是代码中生成的数组。简单移动平均的计算方法:

        窗口的变化将改变平滑后的效果,及红色的先的平滑程度。当窗口尺寸为3的时候,可见,难以平滑的部分已经不见,大致的曲线变得平滑,但是当持续加大窗口尺寸后,最后得到一个一小部直线。红色的曲线也就是预测曲线。

        需要注意的是,在安装seaborn与matplotlib包的时候,使用>python -m pip install matplotlib或者pip install matplotlib https://pypi.tuna.tsinghua.edu.cn/simple或者pin install matplotlib都难以安装,在终端出现这样的提示:

Cannot unpack file C:\Users\HONOR\AppData\Local\Temp\pip-unpack-4qkfflip\simple.html (downloaded from C:\Users\HONOR\AppData\Local\Temp\pip-req-build-s6_3j05c, content-type: text/html); cannot detect archive format
ERROR: Cannot determine archive format of C:\Users\HONOR\AppData\Local\Temp\pip-req-build-s6_3j05c

使用下述语句可以安装成功:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn matplotlib

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn seaborn

1.2 指数加权移动平均-Exponential Weighted Moving Average,EWMA

指数加权移动平均是一种通过对数据点应用指数权重来平滑数据的方法。它对最近的数据点给予较高的权重,而对较早的数据点给予较低的权重。这使得EMA更适合用于追踪快速变化的数据。

        对指数加权移动平均代码的理解:导入对应的包,生成相应的数组(即蓝色折线),定义平滑因子,当平滑因子较小时,平滑效果越强。反之亦然。那么指数加权移动平均的算法为何?

t期加权移动平均数作为t+1期的预测值。

二、指数平滑Exponential Smoothing

指数平滑(Exponential Smoothing)是一种常用的时间序列数据平滑和预测方法,用于处理具有趋势和季节性的数据。它通过分配不同权重给历史数据点,将较高权重分配给较新的数据,以捕获数据的变化趋势。指数平滑通常用于生成预测,特别是在需要对未来时间点进行预测的情况下。

指数平滑的主要特点包括:

  1. 加权平滑:指数平滑使用指数权重来平滑数据。较新的数据点获得更高的权重,而较旧的数据点获得较低的权重。这意味着它对最近的数据更为敏感,从而更好地捕获了数据的最新趋势。

  2. 三种主要形式:指数平滑有三种主要形式:简单指数平滑、双指数平滑和三重指数平滑。每种形式用于不同类型的数据和模式。

    • 简单指数平滑(Simple Exponential Smoothing)用于平滑具有趋势和季节性的数据。

    • 双指数平滑(Double Exponential Smoothing)用于平滑具有趋势但无季节性的数据。

    • 三重指数平滑(Triple Exponential Smoothing)用于平滑同时具有趋势和季节性的数据。

  3. 递归更新:指数平滑是一种递归方法,它将先前的平滑结果与新数据点相结合,以生成下一个时间点的平滑结果。

  4. 预测能力:指数平滑不仅用于平滑数据,还可以用于生成未来时间点的预测。这使得它在需求预测、股票价格预测和销售预测等领域非常有用。

  5. 适用性:指数平滑适用于平稳或非平稳的时间序列数据,它能够很好地处理趋势、季节性和噪声。

  6. 案列:

 结果展示:

三、多项式拟合

多项式拟合(Polynomial Fitting)是一种数据平滑和曲线拟合的方法,它通过使用多项式函数来逼近或拟合原始数据,以便更好地描述数据的趋势或模式。多项式拟合的目标是找到一个多项式函数,它在给定的数据点上经过并能够很好地拟合这些点。

多项式拟合的一般形式如下:

其中,是自变量,是依赖于的因变量, 是多项式系数。通过调整这些系数,可以使多项式函数更好地拟合数据。

多项式拟合常用于以下情况:

  1. 数据平滑:多项式拟合可以用来消除数据中的噪声或波动,从而获得平滑的曲线。

  2. 趋势分析:多项式拟合可用于识别数据中的趋势,例如线性趋势(一阶多项式)、二次趋势(二阶多项式)或更高阶的趋势。

  3. 曲线拟合:多项式拟合可用于拟合实验数据,以获得与理论模型或理论曲线的最佳拟合。

  4. 数据插值:多项式插值是多项式拟合的特殊情况,它通过已知数据点之间的多项式来估计中间值。

多项式拟合的一般原则是选择合适的多项式阶数。阶数过低可能无法很好地拟合数据,而阶数过高可能会导致过度拟合,对新数据的波动非常敏感。因此,选择适当的多项式阶数是关键。三项式案列:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1920437.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

初始网络知识

前言👀~ 上一章我们介绍了使用java代码操作文件,今天我们来聊聊网络的一些基础知识点,以便后续更深入的了解网络 网络 局域网(LAN) 广域网(WAN) 路由器 交换机 网络通信基础 IP地址 端…

可观察性优势:掌握当代编程技术

反馈循环是我们开发人员工作的关键。它们为我们提供信息,并让我们从用户过去和现在的行为中学习。这意味着我们可以根据过去的反应进行主动开发。 TestComplete 是一款自动化UI测试工具,这款工具目前在全球范围内被广泛应用于进行桌面、移动和Web应用的…

“闭门造车”之多模态思路浅谈:自回归学习与生成

©PaperWeekly 原创 作者 | 苏剑林 单位 | 科学空间 研究方向 | NLP、神经网络 这篇文章我们继续来闭门造车,分享一下笔者最近对多模态学习的一些新理解。 在前文《“闭门造车”之多模态思路浅谈:无损》中,我们强调了无损输入对于理想的…

压缩文件的解析方式

我们常用的压缩文件有两种:后缀为.zip或者.rar,接下来将介绍解析两种压缩文件的代码。需要用到三个jar包:commons-io-2.16.1.jar、junrar-7.5.5.jar、slf4j-api-2.0.13.jar,可以在官网下载,也可以发私信。 这段代码是一…

2.GAP:通用访问协议

GAP的简单理解 GAP这个名字,直接翻译过来不好理解。 简单点可以理解为: 这是蓝牙设备在互联之前,过程中,第一个用于交流的协议。在代码上,会给这个协议实现,连接参数的设置,连接事件的实现&am…

【算法】二叉树-迭代法实现前后中序遍历

递归的实现就是:每一次递归调用都会把函数的局部变量,参数值和返回地址等压入调用栈中,然后递归返回的时候,从栈顶弹出上一次递归的各项参数,这就是递归为什么可以返回上一层位置的原因 可以用栈实现二叉树的前中后序遍历 1. 前序…

【数学趣】拉窗帘模型之求面积引发的6个解法

抖音上推了一个趣题 题 求橙色部分的面积 蓝色部分是2个正方形。大的正方形边长为6。(小的正方形一半被一个黄色三角形遮住了一半) 答案 18 解法1:拉窗帘 先写一个代号,方便证明,H G 代表正方形。(G…

AV1 编码标准中帧内预测技术详细说明

AV1 编码标准帧内预测 AV1(AOMedia Video 1)是一种开源的视频编码格式,旨在提供比现有标准更高的压缩效率和更好的视频质量。在帧内预测方面,AV1相较于其前身VP9和其他编解码标准,如H.264/AVC和H.265/HEVC,…

暑假第一次作业

第一步:给R1,R2,R3,R4配IP [R1-GigabitEthernet0/0/0]ip address 192.168.1.1 24 [R1-Serial4/0/0]ip address 15.0.0.1 24 [R2-GigabitEthernet0/0/0]ip address 192.168.2.1 24 [R2-Serial4/0/0]ip address 25.0.0.1 24 [R3-GigabitEthernet0/0/0]ip address 192.…

【Mutilism用74ls192和与非门设计3进制24进制加法计数器2荔枝】2022-5-10

缘由【数电 数字逻辑】如何用74ls192和与非门设计任意进制加法计数器?-嵌入式-CSDN问答

Qt学生管理系统(付源码)

Qt学生管理系统 一、前言1.1 项目介绍1.2 项目目标 2、需求说明2.1 功能性说明2.2 非功能性说明 三、UX设计3.1 登录界面3.2 学生数据展示3.3 信息插入和更新 三、架构说明3.1 客户端结构如下3.2 数据流程图3.2.1 数据管理3.2.2 管理员登录 四、 设计说明3.1 数据库设计3.2 结构…

基于Python+Flask+MySQL的新冠疫情可视化系统

基于PythonFlaskMySQL的新冠疫情可视化系统 FlaskMySQL 基于PythonFlaskMySQL的新冠疫情可视化系统 项目主要依赖前端:layui,Echart,后端主要是Flask,系统的主要支持登录注册,Ecahrt构建可视化图,可更换主…

Qt 统计图编程

学习目标:Qt 折线图,柱形图和扇形统计图编程 学习基础 Qt QChart 曲线图表操作-CSDN博客 学习内容 Qt中绘制三种常见的图表非常方便, 主要步骤如下: 1. 折线图: - 使用QLineSeries定义折线数据,添加多个坐标点 - 使用QValueAxis创建X轴和Y轴 - 将…

数据结构——查找算法

文章目录 1. 查找算法 2. 顺序查找 2. 二分查找 1. 查找算法 查找算法是用于在数据集中定位特定元素的位置的算法。查找是计算机科学中一项基本操作,几乎在所有应用程序中都需要使用。例如,数据库查询、信息检索、字典查找等都涉及到查找操作。查找算…

【Mutilism数字电路实现32进制5线32译码器】2022-5-7

缘由3-8译码器到74HC138-编程语言-CSDN问答 2片16004非门2个组成8进制和4进制实现。 按138逻辑表把E3也接入置零,同时把E1也接入反向使得切换时138保持高电平输出,就看不到转换时第一个出现短暂低电平,是最完美的解决方案,二级反向…

分布式I/O从站的认知

为什么需要分布式I/O从站? 当PLC与控制机构距离过远时,远距离会带来信号干扰,分布式I/O从站只需要一个网络线缆连接。 ET200分布式I/O从站家族 体积紧凑、功能强大。 ET200SP ET200M ET200S ET200iSP ET200 AL ET200pro ET200 eco PN 通讯协议…

yarn底层原理详解:(第33天)

系列文章目录 一、yarn总体架构 二、yarn核心组件及功能 三、yarn资源分配与调度 四、yarn提交和执行流程 五、yarn调度算法 六、yarn安全性与容错性 文章目录 系列文章目录前言一、总体架构二、核心组件及功能1. ResourceManager(RM)2. NodeManager&am…

达梦数据库dm8安装步骤及迁移

目录 前言: 一、安装部署 1、下载 2、创建用户及安装目录 3、挂载下载的镜像 4、环境配置 5、安装 二、基本使用 1、DM工具使用 2、兼容性配置 2.1 兼容GBK字符集编码 2.2 兼容UTF-8字符集编码 3、创建用户和密码,表空间 4、整理数据库配置 5、启动脚本设置 …

13、Python之函数:简单的参数默认值其实并不简单

目录 引言 日志打印的问题 返回参数默认值的问题 问题产生的原因 关于参数默认值的最佳实践 总结 引言 在前一篇关于Python函数的文章中,我们介绍了函数的基本使用、函数的默认参数、lambda函数的用法,相当于对Python中的函数有了一个入门的介绍。…

动态规划之数字三角形模型+最长上升子序列模型

首先,我们从集合角度重新看待DP: 直接看题:https://www.acwing.com/problem/content/1029/ 就是取纸条的原题,我们令f[i1,j1,i2,j2]表示从(1,1),(1,1)分别走到(i1,j1),(i2,j2)的路径的max i1j1i2j2,于是我们可以把状…