python中rolling窗口函数滚动计算一个日期前10天的累计和

本文介绍如何在Python中使用rolling窗口函数计算一个日期前10天的累计和。首先强调了高效利用互联网工具检索信息的重要性,接着描述了一个数据分析场景,需要基于每天的数据计算前x天累计值作为特征。解决方案中提到使用时间窗口函数时,数据索引必须为日期类型,并提供了特征工程的思路。文章最后提及相关数据分析资源和福利。
摘要由CSDN通过智能技术生成

论高效利用互联网工具检索信息的重要性。

千万不要小瞧了互联网信息检索工具的使用能力,作为一个半生码农的数据分析师,代码又不是天天写,你总是记不住各种功能的函数名称?可以理解,并且很正常!原谅自己吧~

但如果情况是:同样的问题你描述不清楚,再如此丰富的信息海洋中,无法快速找到解决问题的参考案例。一个简单的问题,在网上搜呀搜,找呀找,耗费大量时间和精力才能找到一篇好帖子作参考最终解决问题。那你还是要担忧一下自己!

  • 背景描述
    想要构建一个特征,基于每天都值去计算距离当期前x天都一个累计值,之所以说是前x天,是因为具体哪个特征比较好,笔者也不清楚,需要试一试呢。

    所以没有在SQL脚本中就把这一步做了,而是做了个到每日的基础特征,再通过python来动态加工生成特征,选取最优的特征。

  • 解决方案

import pandas as pd
data = pd.read_excel("./0222-0228.xlsx',sheet_name='训练用数据"
Python的pandas库,`rolling`函数是一个非常强大的工具,它用于创建一个“滑动窗口”视图,让你能够在序列数据上进行局部计算,比如求均值、求和、移动最小值等。这在金融分析、时间序列数据处理等领域特别有用。 `rolling`函数的基本语法如下: ```python df.rolling(window, min_periods=None, center=False, win_type=None, on=None, axis=0, closed='right', pad=False) ``` - `window`: 需要滑动的窗口大小,即多少个连续的单元格一起参与计算。 - `min_periods`: 窗口内至少包含多少个有效值才能进行计算,默认为1。 - `center`: 如果True,窗口心位于当索引,而不是左边缘;默认False,窗口左边缘位于当索引。 - `win_type`: 提供窗口形状的函数,如'static'(固定窗口),'triang'(三角形窗)等,可以自定义窗口形状。 - `on`: 如果数据是按某列分组,那么指明哪一列是进行窗口计算的依据。 - `axis`: 通常设置为0表示沿行(默认)滚动,轴1表示沿列滚动。 - `closed`, `pad`: 控制窗口边缘的行为,`closed='right'`意味着包括右边界,`pad=True`则在窗口左侧填充NaNs。 举个例子,如果你有一个时间序列数据的DataFrame,想计算每5的平均值,可以这样操作: ```python df['rolling_average'] = df['column_name'].rolling(window=5).mean() ``` 这将返回一个新的列,每一项都是基于5数据的平均值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值