首页 > 数据分析

python pandas移动窗口函数rolling的用法

时间:2020-08-08 数据分析 查看: 2228

超级好用的移动窗口函数

最近经常使用移动窗口函数,觉得很方便,功能强大,代码简单,故将pandas中的移动窗口函数都做介绍。它都是以rolling打头的函数,后接具体的函数,来显示该移动窗口函数的功能。

rolling_count 计算各个窗口中非NA观测值的数量

函数

pandas.rolling_count(arg, window, freq=None, center=False, how=None)

arg : DataFrame 或 numpy的ndarray 数组格式
window : 指移动窗口的大小,为整数
freq :
center : 布尔型,默认为False, 指取中间的
how : 字符串,默认为“mean”,为down- 或re-sampling

import pandas as pd
import numpy as np
df = pd.DataFrame({'key1':['a','a','b','b','a'],
    'key2':['one','two','one','two','one'],
    'data1':np.nan,
    'data2':np.random.randn(5)})
df

pd.rolling_count(df[['data1','data2']],window = 3)

rolling_sum 移动窗口的和

pandas.rolling_sum(arg, window, min_periods=None, freq=None, center=False, how=None, **kwargs)

arg : 为Series或DataFrame
window : 窗口的大小
min_periods : 最小的观察数值个数
freq :
center : 布尔型,默认为False, 指取中间的
how : 取值的方式,默认为None

pd.rolling_sum(df,window = 2,min_periods = 1)

rolling_mean 移动窗口的均值

pandas.rolling_mean(arg, window, min_periods=None, freq=None, center=False, how=None, **kwargs)

rolling_median 移动窗口的中位数

pandas.rolling_median(arg, window, min_periods=None, freq=None, center=False, how='median', **kwargs)

rolling_var 移动窗口的方差

pandas.rolling_var(arg, window, min_periods=None, freq=None, center=False, how=None, **kwargs)

rolling_std 移动窗口的标准差

pandas.rolling_std(arg, window, min_periods=None, freq=None, center=False, how=None, **kwargs)

rolling_min 移动窗口的最小值

pandas.rolling_min(arg, window, min_periods=None, freq=None, center=False, how='min', **kwargs)

rolling_max 移动窗口的最大值

pandas.rolling_min(arg, window, min_periods=None, freq=None, center=False, how='min', **kwargs)

rolling_corr 移动窗口的相关系数

pandas.rolling_corr(arg1, arg2=None, window=None, min_periods=None, freq=None, center=False, pairwise=None, how=None)

rolling_corr_pairwise 配对数据的相关系数

等价于: rolling_corr(…, pairwise=True)

pandas.rolling_corr_pairwise(df1, df2=None, window=None, min_periods=None, freq=None, center=False)

rolling_cov 移动窗口的协方差

pandas.rolling_cov(arg1, arg2=None, window=None, min_periods=None, freq=None, center=False, pairwise=None, how=None, ddof=1)

rolling_skew 移动窗口的偏度(三阶矩)

pandas.rolling_skew(arg, window, min_periods=None, freq=None, center=False, how=None, **kwargs)

rolling_kurt 移动窗口的峰度(四阶矩)

pandas.rolling_kurt(arg, window, min_periods=None, freq=None, center=False, how=None, **kwargs)

rolling_apply 对移动窗口应用普通数组函数

pandas.rolling_apply(arg, window, func, min_periods=None, freq=None, center=False, args=(), kwargs={})

rolling_quantile 移动窗口分位数函数

pandas.rolling_quantile(arg, window, quantile, min_periods=None, freq=None, center=False)

rolling_window 移动窗口

pandas.rolling_window(arg, window=None, win_type=None, min_periods=None, freq=None, center=False, mean=True, axis=0, how=None, **kwargs)

ewma 指数加权移动

ewma(arg[, com, span, halflife, ...])

ewmstd 指数加权移动标准差

ewmstd(arg[, com, span, halflife, ...])

ewmvar 指数加权移动方差

ewmvar(arg[, com, span, halflife, ...])

ewmcorr 指数加权移动相关系数

ewmcorr(arg1[, arg2, com, span, halflife, ...])

ewmcov 指数加权移动协方差

ewmcov(arg1[, arg2, com, span, halflife, ...])

以上这篇python pandas移动窗口函数rolling的用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持python博客。

展开全文
上一篇:新手入门学习python Numpy基础操作
下一篇:基于Numba提高python运行效率过程解析
输入字:
相关知识
python数据挖掘使用Evidently创建机器学习模型仪表板

在本文中,我们将探索 Evidently 并创建交互式报告/仪表板。有需要的朋友欢迎大家收藏学习,希望能够有所帮助,祝大家多多进步早日升职加薪

Python多进程共享numpy 数组的方法

本文章主要介绍了Python多进程共享numpy 数组的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

python数据分析近年比特币价格涨幅趋势分布

这篇文章主要为大家介绍了python分析近年来比特币价格涨幅趋势的数据分布,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

python调用matlab的方法详解

这篇文章主要为大家介绍了python调用matlab,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助