python statsmodel的使用


Posted in Python onDecember 21, 2020

1、Pandas

Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,相当于这是Python官方自己的一套库

statsmodel是基于Pandas开发的一套库,用于一些描述统计、统计模型估计、推断、预测

2、自回归模型(AutoRegression model,AR)

自回归,从物理的角度来理解就是:当前记录与其历史记录的差值。eg,自回归认为历史的发展是一条斜率一定的直线。

3、滑动平均模型(moving average model, MA)

移动平均,从物理的角度来理解就是:当前记录是历史记录的均值。eg,移动平均模型认为历史的发展是一条水平的线。

4、高级时间序列模型ARMA

ARMA就是把AR和MA结合在一起的一种算法,当AR和MA混合在一起,可以认为是一个y=ax+b的过程,自回归提供了a这个系数,移动平均提供了b这个截距。

5、高级时间序列模型ARIMA【autoregression intergrated moving average差分自回归移动平均】

ARIMA中,I指代的差分,其实是 前后时间上数值的差异,ARIMA就是使用差分的数据来进行ARMA建模

6、ARMA测试

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import statsmodels.api as sm
from statsmodels.graphics.tsaplots import acf, pacf, plot_acf, plot_pacf
from statsmodels.tsa.arima_model import ARMA
from statsmodels.tsa.stattools import arma_order_select_ic

if __name__ == "__main__":

  time_series = pd.Series(
    [151.0, 188.46, 199.38, 219.75, 241.55, 262.58, 328.22, 396.26, 442.04, 517.77, 626.52, 717.08, 824.38, 913.38,
     1088.39, 1325.83, 1700.92, 2109.38, 2499.77, 2856.47, 3114.02, 3229.29, 3545.39, 3880.53, 4212.82, 4757.45,
     5633.24, 6590.19, 7617.47, 9333.4, 11328.92, 12961.1, 15967.61])
  # print('BIC求解的模型阶次为', arma_order_select_ic(time_series, max_ar=10, max_ma=6, ic='bic')['bic_min_order'])
  print('time_series:', len(time_series))
  my_arma = ARMA(time_series, (1, 0)) # 这里的(1, 0)从arma_order_select_ic函数返回,但是这里返回6,7运行失败
  model = my_arma.fit()
  result = model.forecast(10)[0]
  print('result:', result)

python statsmodel的使用

以上就是python statsmodel的使用的详细内容,更多关于python statsmodel的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
谈谈python中GUI的选择
Mar 01 Python
python-docx修改已存在的Word文档的表格的字体格式方法
May 08 Python
python把数组中的数字每行打印3个并保存在文档中的方法
Jul 17 Python
Python SQL查询并生成json文件操作示例
Aug 17 Python
基于随机梯度下降的矩阵分解推荐算法(python)
Aug 31 Python
Python3.4学习笔记之常用操作符,条件分支和循环用法示例
Mar 01 Python
python禁用键鼠与提权代码实例
Aug 16 Python
Python Collatz序列实现过程解析
Oct 12 Python
wxpython绘制音频效果
Nov 18 Python
PyCharm刷新项目(文件)目录的实现
Feb 14 Python
pyCharm 设置调试输出窗口中文显示方式(字符码转换)
Jun 09 Python
浅谈keras.callbacks设置模型保存策略
Jun 18 Python
Python 实现集合Set的示例
Dec 21 #Python
Python 实现二叉查找树的示例代码
Dec 21 #Python
如何利用Python matplotlib绘制雷达图
Dec 21 #Python
OpenCV+python实现膨胀和腐蚀的示例
Dec 21 #Python
python opencv肤色检测的实现示例
Dec 21 #Python
OpenCV+Python3.5 简易手势识别的实现
Dec 21 #Python
如何使用python-opencv批量生成带噪点噪线的数字验证码
Dec 21 #Python
You might like
PHP session有效期session.gc_maxlifetime
2011/04/20 PHP
Php中文件下载功能实现超详细流程分析
2012/06/13 PHP
解析PHP中empty is_null和isset的测试
2013/06/29 PHP
排序算法之PHP版快速排序、冒泡排序
2014/04/09 PHP
PHP中unset,array_splice删除数组中元素的区别
2014/07/28 PHP
yii2学习教程之5种内置行为类详解
2017/08/03 PHP
tp5框架内使用tp3.2分页的方法分析
2019/05/05 PHP
laravel-admin 管理平台获取当前登陆用户信息的例子
2019/10/08 PHP
Jquery跨域获得Json时invalid label错误的解决办法
2011/01/11 Javascript
js 获取时间间隔实现代码
2014/05/12 Javascript
浅谈JavaScript中的对象及Promise对象的实现
2015/11/15 Javascript
JavaScript创建对象的方式小结(4种方式)
2015/12/17 Javascript
实例讲解jQuery EasyUI tree中state属性慎用
2016/04/01 Javascript
JS实现商品筛选功能
2020/08/19 Javascript
Angular.JS中select下拉框设置value的方法
2017/06/20 Javascript
教你完全理解ReentrantLock重入锁
2019/06/03 Javascript
vue 父组件通过$refs获取子组件的值和方法详解
2019/11/07 Javascript
[11:01]2014DOTA2西雅图邀请赛 冷冷带你探秘威斯汀
2014/07/08 DOTA
python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
2009/04/09 Python
对pandas中时间窗函数rolling的使用详解
2018/11/28 Python
Python3转换html到pdf的不同解决方案
2019/03/11 Python
Django配置Bootstrap, js实现过程详解
2020/10/13 Python
Anaconda的安装与虚拟环境建立
2020/11/18 Python
可以随进度显示不同颜色的css3进度条分享
2014/04/11 HTML / CSS
Bjorn Borg官方网上商店:国际运动时尚品牌
2016/08/27 全球购物
加拿大最大的箱包及旅游配件零售商:Bentley Leathers
2017/07/19 全球购物
大学生学习生活的自我评价
2013/11/01 职场文书
小学防溺水制度
2014/01/29 职场文书
美国旅游签证工作证明
2014/10/14 职场文书
2014年小学英语教师工作总
2014/12/03 职场文书
小学元宵节活动总结
2015/02/06 职场文书
外贸业务员岗位职责
2015/02/13 职场文书
导游词之凤凰古城
2019/10/22 职场文书
2019年大学生暑期社会实践调查报告模板
2019/11/07 职场文书
如何创建一个创建MySQL数据库中的datetime类型
2022/03/21 MySQL
mysql 获取相邻数据项
2022/05/11 MySQL