zoukankan      html  css  js  c++  java
  • python统计分析-纯随机性检验

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    # <editable>
    
    
    def execute():
        # <editable>
        '''
        载入模块
        '''
        import warnings
        warnings.filterwarnings("ignore")
        from statsmodels.stats.diagnostic import acorr_ljungbox
        import statsmodels.api as sm
        import pandas as pd
        from sqlalchemy import create_engine
        '''
        连接数据库
        '''
        engine = create_engine('mysql+pymysql://root:123123qwe@127.0.0.1:3306/analysis')
        '''
        选择目标数据
        '''
        params = {
            "columns": "`YEAR`, SUNACTIVITY",
        }
        inputs = {"table": '纯随机性检验'}
        data_sql = 'select ' + params['columns'] + ' from ' + inputs['table']
        data_in = pd.read_sql_query(data_sql, engine)
        print(data_in)
        '''
        纯随机性检验
        '''
        # data = sm.datasets.sunspots.load_pandas().data    # 可以自动生成数据
        res = sm.tsa.ARMA(data_in["SUNACTIVITY"], (1, 1)).fit(disp=-1)
        # res.resid 残差
        data_out = sm.stats.acorr_ljungbox(res.resid, lags=[10], return_df=True)
    
        '''
        将结果写出
        '''
        print(data_out)
        '''
        数据示例
              YEAR  SUNACTIVITY
        0   1700.0          5.0
        1   1701.0         11.0
        2   1702.0         16.0
        3   1703.0         23.0
        4   1704.0         36.0
        5   1705.0         40.4
        6   1706.0         29.8
        7   1707.0         15.2
        8   1708.0          7.5
        9   1709.0          2.9
        10  1710.0         83.4
        11  1711.0         47.7
        12  1712.0         47.8
        13  1713.0         30.7
        14  1714.0         12.2
        15  1715.0         40.4
        16  1716.0         29.8
        17  1717.0         15.2
        18  1718.0          7.5
        19  1719.0          2.9
        20  1720.0         12.6
        
        =======================
             lb_stat  lb_pvalue
        10  7.282251   0.698557
    
        '''
    
    
    
    # </editable>
    
    if __name__ == '__main__':
        execute()
    作者:沐禹辰
    出处:http://www.cnblogs.com/renfanzi/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
  • 相关阅读:
    Completely disable mousewheel on a WinForm
    C# Form内存回收
    解锁用户
    CentOS7+JDK8编译Hadoop2.6.4
    网址收藏
    pvresize
    Linux crontab 命令格式与详细例子
    在CentOS 7中安装与配置JDK8
    Disable SELinux CentOS 7
    Python3标准库:math数学函数
  • 原文地址:https://www.cnblogs.com/renfanzi/p/14688435.html
Copyright © 2011-2022 走看看