数据分析之滚动窗口pandas.DataFrame.rolling方法

本文使用pandas 1.3.5 , python 3, numpy 1.22.0库

文章目录


前言

pandas.DataFrame.rolling方法就是SQL中的 group by方法, 唯一一点区别就是rolling方法的分组不是一成不变的,而是随着窗口的移动而不停更新新的分组。

一 、rolling使用公式

pandas.DataFrame.rolling(window = ).聚合函数
【注:rolling方法是向前取数据!!!】

聚合函数总结如下,

max 最大值
min 最小值
mean 平均值
median 中位数
sum 求和
var 方差
std 标准差
skew 三阶矩(又叫偏斜度)
kurt 四截距 (又叫峰度)
cov 两个变量协方差
corr 相关系数
quantile 百分数

二、python实现

比如,我想分别以2和4为滑动窗口,计算dataFrame格式数据“C”列的和,并分别以“D”和 “E”命名
代码如下,

import pandas as pd
import numpy as np
np.random.seed(0)
date_DataFrame1 = pd.DataFrame(np.random.randn(10,3), index = pd.date_range("2020-05-01", periods = 10), columns = ["A","B","C"])
date_DataFrame1["D"] = date_DataFrame1["C"].rolling(window = 2).sum()
date_DataFrame1["E"] = date_DataFrame1["C"].rolling(window = 4).sum()

结果如下,

数据分析之滚动窗口pandas.DataFrame.rolling方法

上一篇:QT从入门到入土(二)——对象模型(对象树)和窗口坐标体系


下一篇:Torture:跨域访问的功臣:window.name