pandas視窗函式

2021-10-24 10:28:48 字數 1606 閱讀 3531

rolling函式固定視窗大小,滾動計算,每次滾動1格

先隨機建立乙個資料集,有4列,10行

#計算3天的平均值,第三個元素的值將是n,n-1和n-2元素的平均值。

window:表示時間窗的大小,有兩種形式:1)使用數值int,則表示觀測值的數量,即向前幾個資料;2)也可以使用offset型別,這種型別較複雜,使用場景較少,此處暫不做介紹;

min_periods:每個視窗最少包含的觀測值數量,小於這個值的視窗結果為na。值可以是int,預設none。offset情況下,預設為1;

center: 把視窗的標籤設定為居中,布林型,預設false,居右

win_type: 視窗的型別。擷取窗的各種函式。字串型別,預設為none;

on: 可選引數。對於dataframe而言,指定要計算滾動視窗的列。值為列名。

axis: 預設為0,即對列進行計算

closed:定義區間的開閉,支援int型別的window。對於offset型別預設是左開右閉的即預設為right。可以根據情況指定為left、both等。

常用函式:

rolling()函式除了mean(),還支援很多函式,比如:

count() 非空觀測值數量

sum() 值的總和

median() 值的算術中值

min() 最小值

max() 最大

std() 貝塞爾修正樣本標準差

var() 無偏方差

skew() 樣品偏斜度(三階矩)

kurt() 樣品峰度(四階矩)

quantile() 樣本分位數(百分位上的值)

cov() 無偏協方差(二元)

corr() 相關(二進位制)

借助 agg ()函式可以快速實現多個聚類函式,並輸出結果,同時還可以進行重新命名;

引數與rolling函式相同,expanding()函式只設定最小的觀測值數量,不固定視窗大小,實現累計計算,即不斷擴充套件

pandas移動視窗計算脈動

import os import pandas as pd import numpy as np 每個檔案只取前三行後生成的maidong files root d maidong files all u pd.dataframe all v pd.dataframe all chuizhi pd....

pandas 時間序列滑動視窗

比如如下 lambda 函式實現了計算視窗內的平均絕對誤差 e x e x e x e x e x e x df.rolling window 10 lambda x np.fabs x x.mean mean raw true plot subplots true raw true 表示 lamb...

pandas 移動視窗rolling的概念

為了提公升資料的準確性,將某個點的取值擴大到包含這個點的一段區間,用區間來進行判斷,這個區間就是視窗。移動視窗就是視窗向一端滑行,預設是從右往左,每次滑行並不是區間整塊的滑行,而是乙個單位乙個單位的滑行。給個例子好理解一點 import pandas as pd s 1,2,3,5,6,10,12,...