pandas时间序列滑窗
时间序列数据统计—滑动窗口
窗口函数
import pandas as pd
import numpy as np
ser_obj = pd.Series(np.random.randn(1000),
index=pd.date_range('20180101', periods=1000))
ser_obj = ser_obj.cumsum()
print(ser_obj.head())
2018-01-01 0.797334
2018-01-02 0.451286
2018-01-03 1.329133
2018-01-04 0.416577
2018-01-05 0.610993
Freq: D, dtype: float64
r_obj = ser_obj.rolling(window=5)
r_obj2 = ser_obj.rolling(window=5, center=True)
print(r_obj)
Rolling [window=5,center=False,axis=0]
print(r_obj2.mean())
# 验证:
# 前5个数据的均值
# print(ser_obj[0:5].mean())
# 1-6个数据的均值
# print(ser_obj[1:6].mean())
2018-01-01 NaN
2018-01-02 NaN
2018-01-03 0.721065
2018-01-04 0.829352
2018-01-05 0.694121
2018-01-06 0.275495
2018-01-07 0.149214
2018-01-08 0.417734
2018-01-09 0.520458
2018-01-10 1.034506
2018-01-11 1.812417
2018-01-12 2.457410
2018-01-13 2.809996
2018-01-14 3.046443
2018-01-15 2.838209
2018-01-16 2.457822
2018-01-17 2.148508
2018-01-18 1.647887
2018-01-19 1.083220
2018-01-20 1.013525
2018-01-21 0.941850
2018-01-22 0.765751
2018-01-23 0.703581
2018-01-24 0.744616
2018-01-25 0.301710
2018-01-26 -0.168597
2018-01-27 -0.851726
2018-01-28 -1.621299
2018-01-29 -2.538815
2018-01-30 -3.251647
...
2020-08-28 -50.581143
2020-08-29 -51.826380
2020-08-30 -52.950275
2020-08-31 -53.412339
2020-09-01 -53.824206
2020-09-02 -54.099840
2020-09-03 -54.140219
2020-09-04 -54.215937
2020-09-05 -54.242818
2020-09-06 -53.908675
2020-09-07 -53.493851
2020-09-08 -53.209943
2020-09-09 -52.942718
2020-09-10 -53.038547
2020-09-11 -53.188028
2020-09-12 -53.731145
2020-09-13 -54.091879
2020-09-14 -54.867172
2020-09-15 -55.202294
2020-09-16 -55.440556
2020-09-17 -54.926439
2020-09-18 -54.619663
2020-09-19 -54.128376
2020-09-20 -54.274526
2020-09-21 -54.527463
2020-09-22 -55.382880
2020-09-23 -56.309192
2020-09-24 -57.422908
2020-09-25 NaN
2020-09-26 NaN
Freq: D, Length: 1000, dtype: float64
print(r_obj2.mean())
2018-01-01 NaN
2018-01-02 NaN
2018-01-03 0.721065
2018-01-04 0.829352
2018-01-05 0.694121
2018-01-06 0.275495
2018-01-07 0.149214
2018-01-08 0.417734
2018-01-09 0.520458
2018-01-10 1.034506
2018-01-11 1.812417
2018-01-12 2.457410
2018-01-13 2.809996
2018-01-14 3.046443
2018-01-15 2.838209
2018-01-16 2.457822
2018-01-17 2.148508
2018-01-18 1.647887
2018-01-19 1.083220
2018-01-20 1.013525
2018-01-21 0.941850
2018-01-22 0.765751
2018-01-23 0.703581
2018-01-24 0.744616
2018-01-25 0.301710
2018-01-26 -0.168597
2018-01-27 -0.851726
2018-01-28 -1.621299
2018-01-29 -2.538815
2018-01-30 -3.251647
...
2020-08-28 -50.581143
2020-08-29 -51.826380
2020-08-30 -52.950275
2020-08-31 -53.412339
2020-09-01 -53.824206
2020-09-02 -54.099840
2020-09-03 -54.140219
2020-09-04 -54.215937
2020-09-05 -54.242818
2020-09-06 -53.908675
2020-09-07 -53.493851
2020-09-08 -53.209943
2020-09-09 -52.942718
2020-09-10 -53.038547
2020-09-11 -53.188028
2020-09-12 -53.731145
2020-09-13 -54.091879
2020-09-14 -54.867172
2020-09-15 -55.202294
2020-09-16 -55.440556
2020-09-17 -54.926439
2020-09-18 -54.619663
2020-09-19 -54.128376
2020-09-20 -54.274526
2020-09-21 -54.527463
2020-09-22 -55.382880
2020-09-23 -56.309192
2020-09-24 -57.422908
2020-09-25 NaN
2020-09-26 NaN
Freq: D, Length: 1000, dtype: float64
# 画图查看
import matplotlib.pyplot as plt
%matplotlib inline
plt.figure(figsize=(15, 5))
ser_obj.plot(style='r--')
ser_obj.rolling(window=10, center=False).mean().plot(style='g')
ser_obj.rolling(window=10, center=True).mean().plot(style='b')

pandas时间序列滑窗的更多相关文章
- c#滑窗缓存
前言 在大数据时代,软件系统需要具备处理海量数据的能力,同时也更加依赖于系统强大的存储能力与数据响应能力.各种大数据的工具如雨后春笋般孕育而生,这对于系统来说是极大的利好.但在后端采用分布式.云存储和 ...
- Pandas时间序列
Pandas时间序列 pandas 提供了一组标准的时间序列处理工具和数据算法 数据类型及操作 Python 标准库的 datetime datetime 模块中的 datetime. time. c ...
- 【10.7校内测试】【队列滑窗】【2-sat】【贪心+栈二分+线段树(noip模拟好题)】【生日祭!】
比较好想的一道题,直接用队列滑窗,因为扫一遍往队列里加东西时,改变的只有一个值,开桶储存好就行了! #include<bits/stdc++.h> using namespace std; ...
- matlab核函数与滑窗
在处理图像时,为了提取特征,经常用各种核函数和图像进行卷积,其实就是通过一个矩阵以滑窗的形式与原图像进行点乘求和,可以看作对一个像素和附近像素进行了加权平均. 比如经常用3x3的近似高斯卷积核 0 1 ...
- TCP系列31—窗口管理&流控—5、TCP流控与滑窗
一.TCP流控 之前我们介绍过TCP是基于窗口的流量控制,在TCP的发送端会维持一个发送窗口,我们假设发送窗口的大小为N比特,网络环回时延为RTT,那么在网络状况良好没有发生拥塞的情况下,发送端每个R ...
- 计蒜客 A2232.程序设计:蒜厂年会-单调队列(双端队列(STL deque)实现)滑窗维护最小前缀和
程序设计:蒜厂年会 问答问题反馈 只看题面 16.79% 1000ms 262144K 在蒜厂年会上有一个抽奖,在一个环形的桌子上,有 nn 个纸团,每个纸团上写一个数字,表示你可以获得多少蒜币. ...
- [poj 3261]后缀数组+滑窗最小值
题目链接:http://poj.org/problem?id=3261 这个是可以交叉的重复串,所以用height就可以了,但是题目说让重复k次以上,也就是直接做一个k-1长度的滑窗最小值,从这些最小 ...
- HDU 6319.Problem A. Ascending Rating-经典滑窗问题求最大值以及COUNT-单调队列 (2018 Multi-University Training Contest 3 1001)
2018 Multi-University Training Contest 3 6319.Problem A. Ascending Rating 题意就是给你长度为k的数列,如果数列长度k<n ...
- HDU 5696 RMQ+滑窗
区间的价值 Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Subm ...
随机推荐
- scrapy 最新版本中文文档地址
http://scrapy-chs.readthedocs.org/zh_CN/latest/
- NYOJ 6.喷水装置(一)-贪心
喷水装置(一) 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 现有一块草坪,长为20米,宽为2米,要在横中心线上放置半径为Ri的喷水装置,每个喷水装置的效果都会让以 ...
- [BZOJ4316]小C的独立集(圆方树DP)
题意:求仙人掌图直径. 算法:建出仙人掌圆方树,对于圆点直接做普通的树上DP(忽略方点儿子),方点做环上DP并将值直接赋给父亲. 建图时有一个很好的性质,就是一个方点在邻接表里的点的顺序正好就是从环的 ...
- [Contest20180122]超级绵羊异或
题意:求$a\ xor\left(a+b\right)xor\cdots xor\left(a+b\left(n-1\right)\right)$ 对每一位求答案,第$k$的答案是$\sum\limi ...
- 【最短路】【Heap-Dijkstra】【分层图】bzoj2662 [BeiJing wc2012]冻结
裸的分层图最短路. #include<cstdio> #include<cstring> #include<queue> #include<algorithm ...
- Android中的动态字符串的处理
1.效果显示 2. MainAcitivity.java package com.example.app2; import android.support.v7.app.AppCompatActivi ...
- iOS 获取自定义cell上按钮所对应cell的indexPath.row的方法
在UITableView或UICollectionView的自定义cell中创建一button,在点击该按钮时知道该按钮所在的cell在UITableView或UICollectionView中的行数 ...
- MathType如何插入连乘
这个就是连乘符号,只不过看着不习惯......就在眼皮子底下.
- 【Git】GitHub for Windows使用(1)
目录 1.下载GitHub for windows 客户端 2.注册GitHub 3.启动windows端客户端,登录帐号 4.了解Git客户端,从而了解Git的大体功能 5.创建一个新的资源库 6 ...
- iOS页面跳转及数据传递
转: http://blog.csdn.net/wang9834664/article/details/8025571 iOS页面跳转: 第一种 [self.navigationController ...