数据平滑处理

数据平滑处理

简单移动平均线

简单移动平均线是计算与等权重的指示函数的卷积,也可以不等权重. 
1.用ones函数创建一个元素均为1的数组,然后对整个数组除以N,得到等权重. 
2.使用权值,调用convolve函数. 
3.从convolve函数分安徽的数组中取出中间的长度为N的部分(即两者作卷积运算时完全重叠的区域.) 
4.使用matplotlib绘图

import numpy as np
import matplotlib.pyplot as plt
import sys

N=int(sys.argv[1]) weights=np.ones(N)/N print("WEIGHTS",weights) c=np.loadtxt('/home/syd/Documents/stockdata.csv',delimiter=',', skiprows=(2),usecols=(2,),unpack=True) sam=np.convolve(weights,c)[N-1:-N+1] t=np.arange(N-1,len(c)) plt.plot(t,c[N-1:],lw=1.0) plt.plot(t,sam,lw=2.0) plt.show()

这里写图片描述

窗函数:hanning汉宁窗

汉宁窗是一个加权余弦窗函数.numpy.hanning(M) Return the Hanning window.

Parameters: M : int 
Number of points in the output window. If zero or 
Returns: out : ndarray, shape(M,) 
The window, with the maximum value normalized to one (the value one 
appears only if M is odd).

1.调用hanning函数计算权重,生成一个长度为N的窗口,输入参数N

N=int(sys.argv[1]) weights=np.hanning(N) print(weights)

2.使用convolve,进行卷积运算.然后绘图.

import numpy as np
import matplotlib.pyplot as plt
import sys

N=int(sys.argv[1]) weights=np.hanning(N) print("WEIGHTS",weights) c=np.loadtxt('/home/syd/Documents/stockdata.csv',delimiter=',', skiprows=(2),usecols=(2,),unpack=True) sam=np.convolve(weights/weights.sum(),c)[N-1:-N+1] t=np.arange(N-1,len(c)) plt.plot(t,c[N-1:],lw=1.0) plt.plot(t,sam,lw=2.0) plt.show()

这里写图片描述

作者:轻笑再轻叹 出处链接:https://blog.csdn.net/a1212125/article/details/78030640
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119598.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vim 搜索命令_linux vim编辑器

    vim 搜索命令_linux vim编辑器VIM查找命令VIM命令功能f向前搜索并将光标停留在目标字符上F向后搜索并将光标停留在目标字符上;重复刚才的查找,反向重复刚才的查找t向前搜索并将光标停留在目标字符的前一个字符上T向后搜索并将光标停留在目标字符的后一个字

    2022年9月23日
    1
  • cs架构的软件中服务器作用,cs架构(cs架构基本原理)

    cs架构的软件中服务器作用,cs架构(cs架构基本原理)用最简单的话,让我明白区别就给分。不要复制的!CS架构,就是你的电脑,需要装个软件,才能连接服务器。而BS架构,就是你的电脑,只需要用浏览器,就可以连接服务器了。1.CS(Client/Server):客户端—-服务器结构。C/S结构在技术上很成熟,它的主要特点是交互性强、具有安全的存取模式、网络通信量低、响应速度快、利于处理大量数据.软件中的CS架构指什么?C/S=Client/Server…

    2022年6月16日
    64
  • Graphics2D 绘制图形

    Java语言在Graphics类提供绘制各种基本的几何图形的基础上,扩展Graphics类提供一个Graphics2D类,它拥用更强大的二维图形处理能力,提供、坐标转换、颜色管理以及文字布局等更精确的控制。绘图属性Graphics2D定义了几种方法,用于添加或改变图形的状态属性。可以通过设定和修改状态属性,指定画笔宽度和画笔的连接方式;设定平移、旋转、缩放或修剪变换图形;以及设定填充图

    2022年4月13日
    98
  • 模型评估方法(混淆矩阵)「建议收藏」

    模型评估方法(混淆矩阵)「建议收藏」在数据挖掘或机器学习建模后往往会面临一个问题,就是该模型是否可靠?可靠性如何?也就是说模型的性能如何我们暂时不得而知。如果模型不加验证就使用,那后续出现的问题将会是不可估计的。所以通常建模后我们都会使用模型评估方法进行验证,当验证结果处于我们的可控范围之内或者效果更佳,那该模型便可以进行后续的进一步操作。这里又将面临一个新的问题——如何选择评估方法,其实通常很多人都会使用比较简单的错误率来…

    2022年5月15日
    47
  • 20140430-STVD中报can’t open file crtsi0.sm8的问题

    20140430-STVD中报can’t open file crtsi0.sm8的问题上述问题在

    2022年9月2日
    2
  • 包管理器Bower使用手冊之中的一个

    包管理器Bower使用手冊之中的一个

    2021年11月14日
    96

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号