02.用于数据科学的 Python 基础知识之pandas(下)


rolling()函数

rolling函数,这个函数可以被Series对象调用,也可以被DataFrame对象调用,这个函数主要是用来做移动计算的。

举个栗子,假设我们有10天的销售额,我们想每三天求一次总和,比如第五天的总和就是第3天 + 第4天 + 第5天的销售额之和,这个时候我们的rolling函数就派上用场了。

rolling() 函数一般会结合 sum() 函数或 mean() 函数等其他函数一起使用。

amount.rolling(3)相当于创建了一个长度为3的窗口,窗口从上到下依次滑动,我们画一张图吧:

02.用于数据科学的 Python 基础知识之pandas(下)
02.用于数据科学的 Python 基础知识之pandas(下)

amount.rolling(3)就做了类似于图中的事情,然后调用sum函数,会将每个窗口里面的元素加起来,就得到我们输出的结果。另外窗口的大小可以任意,这里我们以3为例。

除了sum()求和,还可以mean()求平均值、std()求方差、max()求最大值、min()求最小值等等。


shift()函数

shift函数是对数据进行移动的操作,假如现在有一个DataFrame数据df,如下所示:

DataFrame.shift(periods=1, freq=None, axis=0)

参数说明:

  • periods:类型为int,表示移动的幅度,可以是正数,也可以是负数,默认值是1,1就表示移动一次,注意这里移动的都是数据,而索引是不移动的,移动之后没有对应值的,就赋值为NaN。
  • freq: DateOffset, timedelta, or time rule string,可选参数,默认值为None,只适用于时间序列,如果这个参数存在,那么会按照参数值移动时间索引,而数据值没有发生变化。
  • axis:{0, 1, ‘index’, ‘columns’},表示移动的方向,如果是0或者’index’表示上下移动,如果是1或者’columns’,则会左右移动。
02.用于数据科学的 Python 基础知识之pandas(下)

原创文章,作者:朋远方,如若转载,请注明出处:https://caovan.com/02-yongyushujukexuede-python-jichuzhishizhipandasxia-2/.html

(0)
打赏 微信扫一扫 微信扫一扫
朋远方的头像朋远方
上一篇 2022年11月12日 下午12:49
下一篇 2022年11月13日 上午8:30

相关推荐

发表回复

登录后才能评论