zoukankan      html  css  js  c++  java
  • Pandas入门之十一:窗口函数

    已信任
    Jupyter 服务器: 本地
    Python 3: Not Started
    [1]
    
    
    
    import pandas as pd
    import numpy as np
    
    
    
    [3]
    
    
    
    
    df = pd.DataFrame(np.random.randn(10,4))
    df
    0    1    2    3
    0    -0.167745    1.388318    -0.045825    -0.383229
    1    -0.867401    -0.497960    -0.525743    -0.111150
    2    0.324680    0.271732    -0.342777    1.453611
    3    0.172405    -0.044844    1.191591    -0.599321
    4    -1.949989    2.652536    0.512927    -0.021361
    5    -0.210365    0.725848    -0.630876    0.911816
    6    -1.794296    0.119304    -0.453249    0.765076
    7    1.290630    -0.642162    0.131960    -0.822012
    8    -0.852863    0.842078    0.921524    -0.739347
    9    -1.062502    -0.123790    1.387979    1.342889
    [5]
    
    
    
    # 算出连续3天的平均数,以3为单位进行滑窗
    df.rolling(window=3).mean()
    0    1    2    3
    0    NaN    NaN    NaN    NaN
    1    NaN    NaN    NaN    NaN
    2    -0.236822    0.387363    -0.304782    0.319744
    3    -0.123438    -0.090357    0.107690    0.247713
    4    -0.484301    0.959808    0.453913    0.277643
    5    -0.662650    1.111180    0.357881    0.097045
    6    -1.318217    1.165896    -0.190400    0.551844
    7    -0.238010    0.067663    -0.317388    0.284960
    8    -0.452176    0.106407    0.200078    -0.265428
    9    -0.208245    0.025376    0.813821    -0.072823
    [7]
    
    
    
    # expanding累加计算平均:先计算1-3的均值,再计算1-4的均值,。。。通过累加计算均值,变化幅度不会太大
    df.expanding(min_periods=3).mean()
    0    1    2    3
    0    NaN    NaN    NaN    NaN
    1    NaN    NaN    NaN    NaN
    2    -0.236822    0.387363    -0.304782    0.319744
    3    -0.134515    0.279312    0.069311    0.089977
    4    -0.497610    0.753956    0.158034    0.067710
    5    -0.449736    0.749272    0.026549    0.208394
    6    -0.641816    0.659276    -0.041993    0.287920
    7    -0.400260    0.496597    -0.020249    0.149179
    8    -0.450549    0.534983    0.084392    0.050454
    9    -0.511744    0.469106    0.214751    0.179697
    [-]
  • 相关阅读:
    Linux安装Jenkins
    python实现寻找目录中最新的文件
    python代码实现邮件发送
    面向对象(一) 类与类之间的关系之依赖和关联
    常见模块(五) random模块
    装饰器如何装饰带参数的函数
    常见模块(四) os模块
    常见模块(二) logging模块
    常见模块(三) pickle模块和json模块
    初识模块
  • 原文地址:https://www.cnblogs.com/vvzhang/p/15013088.html
Copyright © 2011-2022 走看看