干预分析模型- China GDP

2023-11-09

干预分析模型 - GDP预测

加载pandas、matplotlib等包,处理时间序列

import pandas as pd
import numpy as np
import matplotlib.pylab as plt

%matplotlib inline
# 解决坐标轴刻度负号乱码
plt.rcParams['axes.unicode_minus'] = False
# 解决中文乱码问题
plt.rcParams['font.sans-serif'] = ['Simhei']

from matplotlib.pylab import rcParams
rcParams['figure.figsize'] = 15, 6

import warnings
warnings.filterwarnings("ignore")

读入数据

data = pd.read_csv('China GDP 1980-2016.csv')
data.head()
Year GDP
0 2016 743585.5
1 2015 689052.1
2 2014 643974.0
3 2013 595244.4
4 2012 540367.4
data.dtypes
Year      int64
GDP     float64
dtype: object
data.columns
Index(['Year', 'GDP'], dtype='object')

Year 是int64类型,在时间序列分析中,我们需要现将数据转化为时间序列

dateparse = lambda dates: pd.datetime.strptime(dates, '%Y')
dateparse('1962')
datetime.datetime(1962, 1, 1, 0, 0)
df = pd.read_csv('China GDP 1980-2016.csv', parse_dates=['Year'], index_col='Year', date_parser=dateparse)
df.head()
GDP
Year
2016-01-01 743585.5
2015-01-01 689052.1
2014-01-01 643974.0
2013-01-01 595244.4
2012-01-01 540367.4
# 检查索引格式
df.index
DatetimeIndex(['2016-01-01', '2015-01-01', '2014-01-01', '2013-01-01',
               '2012-01-01', '2011-01-01', '2010-01-01', '2009-01-01',
               '2008-01-01', '2007-01-01', '2006-01-01', '2005-01-01',
               '2004-01-01', '2003-01-01', '2002-01-01', '2001-01-01',
               '2000-01-01', '1999-01-01', '1998-01-01', '1997-01-01',
               '1996-01-01', '1995-01-01', '1994-01-01', '1993-01-01',
               '1992-01-01', '1991-01-01', '1990-01-01', '1989-01-01',
               '1988-01-01', '1987-01-01', '1986-01-01', '1985-01-01',
               '1984-01-01', '1983-01-01', '1982-01-01', '1981-01-01',
               '1980-01-01'],
              dtype='datetime64[ns]', name='Year', freq=None)
# 转化为时间序列数据
ts = df['GDP'].sort_index()
ts.head()
Year
1980-01-01    4587.6
1981-01-01    4935.8
1982-01-01    5373.4
1983-01-01    6020.9
1984-01-01    7278.5
Name: GDP, dtype: float64

拆分数据为训练集和测试集

min(ts.index), max(ts.index)
(Timestamp('1980-01-01 00:00:00'), Timestamp('2016-01-01 00:00:00'))
train = ts['1980':'1997']
test = ts['1998':'2006']

平稳性检验

绘制时序图

# Plotting data
train.plot(figsize=(20,6), fontsize=14, label="train")
test.plot(figsize=(20,6), title= 'GDP', fontsize=14, label="test")
plt.show()

[外链图片转存失败(img-xLpGUy3F-1562729294200)(output_16_0.png)]

平稳性检验

from statsmodels.tsa.stattools import adfuller


def test_stationarity(timeseries):
    # Perform Dickey-Fuller test:
    print('Results of Dickey-Fuller Test:')
    dftest = adfuller(timeseries, autolag='AIC')
    dfoutput = pd.Series(dftest[0:4], index=['Test Statistic','p-value','#Lags Used','Number of Observations Used'])
    for key,value in dftest[4].items():
        dfoutput['Critical Value ({})'.format(key)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

干预分析模型- China GDP 的相关文章

  • Python兼职半月赚了5570元:边学习边赚钱真的很爽!

    前几天去参加朋友聚会 还没聊几句 就看到阿杰手机 叮 地一声 弹出一条推送 支付宝已到账 5570元 我开玩笑说 你暑假都有这么多生活费啊 羡慕了 快乐都是别人的 没想到阿杰说 除了管爸妈要生活费 我还不能搞点副业儿养活自己吗 我不酸 仔细
  • 【数据采集】获取网站数据(二)

    获取网站数据 二 1 常用的数据采集python库 Beautiful Soup https www crummy com software BeautifulSoup bs4 doc zh pyspider http docs pyspi
  • 装上这10个插件,PyCharm才是无敌的存在

    pycharm是一款强大的python集成开发环境 带有一整套python开发工具 今天就给大家介绍几款非常好用的插件 首先插件的下载方法 进入File gt Settings gt Plugins 根据需要搜索插件名称 记得是在Marke
  • 数据科学编程技能

    特点 使用数据科学技术 您可以将原始数据转化为可操作的见解 适用于从城市规划到精准医学的各个领域 数据科学编程技能汇集了您入门所需的所有基础技能 即使您没有编程或数据科学经验 指导安装和配置解决专业级数据科学问题所需的工具 包括广泛使用的
  • 【Pycharm教程】推荐一些 PyCharm 中常用的插件

    工欲善其事 必先利其器 PyCharm 上面的插件是非常实用的 能够巧妙的使用插件对于我们的开发功能的帮助非常大 下面我为大家推荐一些不错的插件 1 Key Promoter X 快捷键 用来提示快捷键的插件 帮助我们尽可能的摆脱鼠标操作
  • Anaconda_Python视觉项目TensorFlow_scikit-learn和OpenCV及其Raspberry Pi雾计算

    设置 Anaconda 环境 介绍和安装 Python 和 Anaconda 安装库 探索Jupyter Notebook TensorFlow创建图像字幕 图像字幕 字幕模型 Jupyter执行模型 训练模型 OpenCV 读取车牌 读取
  • Neo4j 快速入门

    Neo4j 快速入门 neo4j 官方文档 https neo4j com docs neo4j 中文社区 http neo4j com cn neo4j 开发者页面 https neo4j com developer Neo4j安装 a
  • 【数据科学】肯德尔等级相关系数( Kendall's tau coefficient )

    在统计学中 Kendall等级相关系数 通常称为Kendall的tau系数 在希腊字母 之后 是用于测量两个测量量之间的序数关联的统计量 甲tau蛋白测试是一种非参数假设检验用于基于所述tau蛋白系数统计依赖性 它是衡量等级相关 数据的排序
  • Python入门教程完整版(懂中文就能学会)

    今天给大家带来了干货 Python入门教程完整版 完整版啊 完整版 言归正传 小编该给大家介绍一下这套教程了 希望每个小伙伴都沉迷学习 无法自拔 本套教程学习时间15天 1 3天内容 为Linux基础命令 4 13天内容 为Python基础
  • 【数据异常校验】肖维勒准则(Chauvenet Criterion)处理异常数据

    介绍 在统计理论中 肖维勒准则 以William Chauvenet命名 是评估一组实验数据 一组异常值 是否可能是虚假的一种手段 肖维勒准则背后的想法是找到一个以正态分布的均值为中心的概率带 它应该合理地包含数据集的所有n个样本 通过这样
  • 【速度收藏】20个常用的Python技巧,太赞啦

    Python的可读性和简单性是其广受欢迎的两大原因 本文介绍20个常用的Python技巧来提高代码的可读性 并能帮助你节省大量时间 下面的技巧将在你的日常编码练习中非常实用 1 字符串反转 使用Python切片反转字符串 Reversing
  • 人工智能革命:超级智能之路(上)

    这篇文章翻译于Tim Urban大神的 The AI Revolution 的系列文章 下面让我们一起领略一下Tim Urban大神理解的人工智能革命是怎样的吧 文章目录 遥远的未来 即将到来 超级智能之路 人工智能 我们目前在哪里 一个在
  • 时序数据和语音处理

    时序数据 时序数据概述 即时间序列数据 用于时序预测 作用 用来连续观察同一对象在不同时间点上获得的数据样本集 处理目标 对给定的时间序列样本 找出统计特性和发展规律性 推测未来值 语音是一类特殊的时序数据 识别语音对应的文本信息是当前人工
  • Excel构建决策分析模型

    特点 探讨使用 Excel 构建决策模型的价值和重要性 以及对 Excel 复杂性的非常详细和深入的解释 使用 Excel 的图形功能来有效地呈现定量数据 比率和间隔 来通知和影响目标对象 利用 Excel 的内置数据可视化和操作功能准备数
  • pandas学习笔记--取表格中特定行或列或特定位置元素

    先生成一个演示dataframe df pd DataFrame np random randn 5 5 columns A B C D E index a b c d e df 取前两行 df 0 2 取后两行 df 2 取倒数第二行 d
  • 互联网行业潜规则:宁花11k招新人,不花9k留老人

    最近一位互联网从业者发出这样的感慨 有些互联网公司 宁愿花11k招新人 也不愿意花9k留住老员工 为什么 对此 许多网友给出了答案 有的网友说 因为老员工的能量已经耗尽 再也不能为公司创造更高的价值 有的网友说 因为只要给一个老员工涨工资
  • 如何成长为一名机器学习工程师

    如何成长为一名机器学习工程师 经常有人这么问 而这篇文章就尝试回答这个问题 其中会谈到关于机器学习的方方面面 从简单的线性回归到最新的神经网络 你不仅将学习如何使用这些技术 还将学习如何从头开始构建它们 这个指南主要面向计算机视觉 CV 这
  • 【数据预处理】Pandas缺失的数据处理

    目录 缺少数据基础 何时 为何 数据丢失 被视为 缺失 的值 日期时间 插入缺失数据 缺少数据的计算 Sum Prod of Empties Nans GroupBy中的NA值 清理 填写缺失数据 填充缺失值 fillna 用PandasO
  • 找了一堆Python教程自学,为何还是看不进去!那是因为你根本没找对方法

    Python学不进 这个系列我今天就再带着大家梳理一遍 虽然我之前也讲过这系列 因为 有人还是不会啊 我想说的就两个点 第一 学Python以实用性为导向 第二 理解和运用 学Python死记硬背作用不大的 从来没听过哪个程序员是靠背学会编
  • pandas学习笔记--增加行或列

    一 增加行 1 loc 想增加一行 行名称为 5 内容为 16 17 18 19 df loc 5 16 17 18 19 后面的序列是Iterable就行 2 at df at 5 16 17 18 19 3 set value df s

随机推荐

  • docker搭建mysql高可用集群

    docker中搭建mysql高可用集群 percona xtradb cluster percona xtradb cluster是一款很棒的mysql高可用集群解决方案 特点是每个节点都能进行读写且都保存全量的数据 也就是说在任何一个节点
  • 大数据 第一节课 linux基础 基本的操作

    Linux的基础 一 Linux的实验环境 二 安装配置Linux和Linux的目录结构 1 安装Linux的过程中 注意的问题 虚拟机类型 Redhat linux 7 64位 重要的 网卡的类型 仅主机模式 host only IP地址
  • 性能测试(并发负载测试)测试分析

    声明 此文章是从网络上转载下来的 至于真实出处无法找到 在对系统进行测试的时候 通常有一个难点那就是使用LR JMeter等进行了性能测试 但是很难进行测试后的分析 以下很大一部分是从网上转载下的一位前辈对性能测试后的分析的见解 分析原则
  • 一些诗集-自创+整理

    常学问 传统文化常学问 研究中易琢磨神 时时出来抬头看 兼容并包实践真
  • win10和linux双系统免u盘,WIN10下免U盘安装Ubuntu双系统

    目录 一 工具下载 二 安装前的准备工作 三 安装Ubuntu系统 四 注意 最后 附下本文参考的博客 一 工具下载 1 下载Ubuntu操作系统 Ubuntu操作协同最好是去Ubuntu官方网站下载 https ubuntu com do
  • 你知道es是如何计算相似度得分的吗?

    1 es中相似度计算公式 BM25 6 x版本和7 x 版本的es的默认得分计算方式都是BM25 假如用户给定一个输入 Q Q Q 其包含了关键字 q 1
  • Latex插入表格及表格设置

    前言 下面将介绍简单的表格插入与格式设置 更多请参考texdoc中宏包说明 1 导言区 代码如下 示例 documentclass article usepackage ctex 更多表格设置见 texdoc booktab 三线表 tex
  • Unity3D FPS Game:第一人称射击游戏(三)

    耗时一周制作的第一人称射击游戏 希望能帮助到大家 由于代码较多 分为三篇展示 感兴趣的朋友们可以点击查看 Unity3D FPS Game 第一人称射击游戏 一 Unity3D FPS Game 第一人称射击游戏 二 Unity3D FPS
  • linux系统中防火墙脚本,防火墙设置脚本

    防火墙设置脚本 gt success 在web服务器中 只需要开启 web服务 和ssh服务还有 ping 其它的一率禁止 脚本如下 gt warning 在配置防火墙的时 一定要注意 不要把自己关在外面 最简单的方式 是使用脚来处理 bi
  • strtok_s的用法基本解释(2021-07-12)

    strtok s的用法基本解释 char string A string tof tokens nand some more tokens char seps t n char token NULL printf Tokens n char
  • 以太坊Ethereum命令

    etheum命令 查询账户 eth accounts 创建账户 personal newAccount password 查看账户余额 eth getBalance eth accounts 0 或指定具体的账户 eth getBalanc
  • SSO、OAuth2、JWT、CAS、OpenID、LDAP、淘宝微信登录一网打尽

    目录 前言 一 SSO简介 二 OAuth2简介 三 OAuth 2 0 规定了四种获得令牌的流程 1 授权码 Authorization Code 2 隐藏式 Implicit 3 密码式 Resource Owner Password
  • Cache的基本原理以及简单操作

    对于没有接触过底层技术的朋友来说 或许从未听说过cache 毕竟cache的存在对程序员来说是透明的 在接触cache之前 先为你准备段code分析 int arr 10 128 for i 0 i lt 10 i for j 0 j lt
  • 【JavaScript】关于this的代码输出题总结

    1 在Javascript中 this指向函数执行时的当前对象 2 箭头函数时不绑定this的 它的this来自原其父级所处的上下文 3 如果call第一个参数传入的对象调用者是null或者undefined call方法将把全局对象 浏览
  • docker容器里输入python: command not find

    在docker 容器里已经安装好了python包等文件 但是在命令行输入python时出现的是command not find 这是因为没有将包里的python与用户认识的python 建立起来联系 只需要建立软连接即可 ln s opt
  • 使用QNetworkRequest,实现网络连接

    首先要在头文件中包含以下文件 include
  • java解析未知key json_Gson解析JSON中动态未知字段key的方法

    前面一篇文章我介绍了Gson的解析的基本方法 但我们在享受Gson解析的高度封装带来的便利时 有时可能会遇到一些特殊情况 比如json数据中的字段key是动态可变的时候 由于Gson是使用静态注解的方式来设置实体对象的 因此我们很难直接对返
  • 微信小程序开发日记(二)

    一 VSCode开发微信小程序配置 安装插件 minapp 安装插件wechat snippet 安装wxml插件 如何调试 调试遇到两个问题 第一 如何热更新 第二 如何看console 第三 新建页面 新建组件等操作还是微信IDE好一些
  • fetch用英语解释_fetch什么意思_fetch是什么意思中文翻译

    fetch表达的意思有很多种 那么你知道fetch做动词和名词分别都有哪些意思吗 下面学习啦小编为大家带来fetch的英语意思和例句 欢迎大家学习 fetch作动词的意思 取来 抵达 到达 卖得 fetch作名词的意思 拿取 拿来 诡计 风
  • 干预分析模型- China GDP

    干预分析模型 GDP预测 加载pandas matplotlib等包 处理时间序列 import pandas as pd import numpy as np import matplotlib pylab as plt matplotl