当前位置: 代码网 > it编程>前端脚本>Python > 山西省居民人均收支数据分析与预测

山西省居民人均收支数据分析与预测

2024年07月31日 Python 我要评论
基于2020年山西统计年鉴全省居民人均收支情况的数据,使用Python做出了具体的数据分析,分为收支分析和对比分析。其中收支分析的主要内容包括,通过matpltlib绘制了1978年到2020年山西省人均收支情况,其中山西居民的收入始终大于支出,但从开始的人均收支的差距非常的小,到现在人均收支的差距非常的大,得到居民的生活水平在不断提高,居民自由分配的财产在增加。

山西省居民人均收支数据分析与预测

摘 要: 合理的收入和支出是经济持续健康发展的基础。目前,城乡居民收入稳步提高,消费内生动力增强,疫情影响逐渐减弱。山西居民消费支出继续回升,消费需求继续释放,消费者信心依然不足。为了,更好的了解山西居民的收支情况,本文基于2020年山西统计年鉴全省居民人均收支情况的数据,使用python做出了具体的数据分析,得到的结论:从1980年来,山西居民的收入和支出的差距在逐渐拉大,说明了居民有更多的自由分配的财产,其中工资性的收入占比的权重在逐年下降,转移净收入占比在逐年上升,在支出中食品烟酒的占比在逐年下降,居住的占比反而在逐年上升,说明房价的生活压力在目前来说,是非常的严重,最后基于时间序列arima模型对未来的居民人均收支情况进行了相关的预测。
关键词:python;山西;arima;人均收支;

1.1研究的背景及意义

随着我国经济的迅速发展,我国居民的人均消费水平也随之不断提高,山西省也不例外。山西居民人均收入是指平均一年每个人的收入。只要将年收入除以所有人员总数,就可以得到人均年收入,人均年收入水平是衡量一个家庭的经济实力和富裕程度的一个重要指标,同时也是综合地反映一个地区的经济发展水平、经济实力和生活水平的重要标志。通过对山西省的人均收入数据分析,可以发现其中的规律并且可以做出可靠的预测分析,可靠的分析与预测首先可以方便本省以及各个单位提前做出政策的调整和变化,其次对家庭财政预算具有指导意义,同时有利于我省合理的利用社会资源以及问题的发现。有利于本省的经济发展以及城镇化的推行。这不仅仅是对山西省经济的影响,也是对中国经济的影响。

1.2 国内研究现状

本课题在国内外的研究状况及发展趋势:
国外研究状况:在研究城乡收入差距方面,城乡间收取差距对总体地区的收入差距虽然占有重要的地位,但是具有下降趋势,在地区收入差距方面,把地区差异分解为省内差异,省际差异,农村内部差异,城市内部差异,城乡内部差异以及城乡差距,并得出了城乡差距对地区间产值差异的影响十分显著的结论。
国内研究状况:城镇居民收入差距小于农村居民的收入差距,以广义价值论,建立了相关的的计量经济模型[1],说明了中国城乡相对收入差距主要是他们的比较生产力的差别决定的。通过对1992-2019年中国收入分配差异的mld指数分解分析[2],得出地区经济水平差异是影响中国区域间收入分配差距变化的核心因素。利用省际收入法gdp数据和财政年鉴数据的比例[3],重新计算了国民收入分配格局,分析了收入格局变化的原因是要素分配格局变化,劳动收入额大幅度下降导致了住户收入比重下降。
本课题的发展趋势:我国近几年经济,科技发展迅速,尤其是云计算的出现,给信息处理提供了方便快捷的手段,人均收支情况变化较大,对未来的收支情况有着憧憬与期待,所以对人均收支数据的分析和预测是促进我国以及各省必不可少的一部分。对其的研究只会越来越深入。本文可以分为数据分析和数据建模两个部分,数据分析可以分为收支分析和对比分析,数据建模分为预测收入arima模型和预测支出的arima模型。

第2章山西省人均收支情况分析

2.1数据来源

中国年鉴数据[4]是反映城市重大社会经济发展的统计手册,包含了每年城市社会和经济发展的最重要统计信息。城市居民的收集及相关信息的收集、整理和提供。对相关统计信息质量的审查和评估、公司相关基本统计信息的设计和管理,以及最终进行的统计分析,是具有很大权威和可信度的数据。对此,收集了山西省2020年城镇居民人均收支情况,2020年农村居民人均收支情况和2020年全省居民人均收支情况的数据,一共三个excel文件。基于三个excel文件,对三个excel文件人均收支情况进行分析。
具体下载的网址:https://www.yearbookchina.com/navibooklist-n3022013071-1.html
其他的工作环境:
硬件环境:联想笔记本。
软件环境: python环境,anaconda工具包。
2.2收支分析
在2020年全省居民人均收支情况的数据中,主要统计了山西省居民从1978 到2020年关于收入和支出的情况。
其中收入划分为工资性收入,经营净收入,财产净收入和转移净收入,一共四个类型的收入。支出分为消费支出,食品烟酒, 衣着,居住, 生活用品及服务, 交通通信, 教育文化娱乐, 医疗保健共八个类型支出。通过matplotlib对1978 到2020年山西收入和支出的情况,绘制了具体的时间趋势图,并添加了美观的主题,如图2.1所示。

图2.1 1978年到2020年山西省人均收支情况
从图2.1看出,山西居民的收入始终大于支出,从1978年到2000年,人均收支的差距非常的小,说明当时的居民并没有很多的自由分配的财产从2000年开始,这种差距在逐渐变大,居民自由分配的财产在增加。说明了居民的生活水平逐步提高,生活压力不大,对经济发展是利好的。
为了更好的了解山西居民的各种收入的占比情况,绘制了图2 。图2是1978年到2020年山西省人均各种收入占比情况,反应了山西居民的各种收入的占比情况。

图2.2 1978年到2020年山西省人均各种收入占比情况
从图2.2看出,山西居民的收入主要来自工资性收入,这种占比一直稳定在0.6,在1990年开始,经营净收入的占比在逐年降低,说明了个体创业经济在逐年降低,转移净收入占比在逐年上升,表明国家对居民的转移支付,如退休金,失业救济金在逐年上升。企业和个体户经济占比在不断的下降,打击了自主创新,自力更生的积极性,这对长期的经济并不利好。
为了更好的了解山西居民的各种支出的占比情况,绘制了图2.3 。图2.3是1978年到2020年山西省人均各种支出占比情况,反应了山西居民的各种支出的占比情况。

图2.3 1978年到2020年山西省人均各种支出占比情况
从图2.3看出,山西居民的支出主要来自食品烟酒,从1980的0.6的占比下降到了0.3,说明了人们的生活提高,更多的支出不再来自日常的饮食,这是一个利好的消息。说明了山西居民基本满足了生活需求,手上有更多的资金用于其他方面。其中,生活用品及服务和医疗保健在逐年上升,说明了居民更多的资金用于休闲和养老。但是,图3也有不利的消息,居住占比在逐年上升,说明了当前的房价确实偏高,造成了年轻人很大的生活压力。

2.3对比分析

数据来源于山西省2020年城镇居民人均收支情况 和 2020年农村居民人均收支情况的excel,主要用于分析城镇和农村居民在人均收支的差异情况。
为了更好的了解山西农村和城镇居民的各种收支的差异,绘制了图2.4 。图2.4是1978年到2020年山西省农村和城镇人均收支对比,反应了山西省农村和城镇人均收支对比情况。

图2.4 1978年到2020年山西省农村和城镇人均收支对比
从图2.4看出,山西农村居民的收入还不如城镇居民支出高,说明了农村和城镇的收入和支出的不平衡,造成了贫富差距巨大,解决农村居民的收入是目前看来,非常重要的任务。其次城镇居民的收支差距非常的大,说明了城镇居民有很大的自由分配的财产。但是,对比农村居民的收支差距非常的小,说明了农村居民没有自由分配的财产。
为了更好的了解山西农村和城镇居民的各种收入的差异,绘制了图2.5 。图2.5是1978年到2020年山西省农村和城镇人均收入对比,反应了山西省农村和城镇人均收入对比情况。

图2.5 1978年到2020年山西省农村和城镇人均收入对比
从图2.5看出,山西省城镇人均收入主要依靠的还是工资性收入,占比稳定在0.6,相对于农村而言,工资性收入占1985年到2000年出现了大幅度下降,说明了当时农村就业岗位非常少,造成了大量的劳动力流出农村,也导致了个体户创业收入的提高。对于转移净收入,在2000年城镇出现了大幅度上升,而农村几乎接近于0.05,说明了在200年之前国家补助的对象还是以城镇为主,但是2000以后,补助的重心集中在农村,最近几年农村的转移净收入上升趋势很明显。
为了更好的了解山西农村和城镇居民的各种支出的差异,绘制了图2.6 。图2.6是1978年到2020年山西省农村和城镇人均支出对比,反应了山西省农村和城镇人均支出对比情况。

图2.6 1978年到2020年山西省农村和城镇人均支出对比
从图2.6看出,山西省城镇和农村的人均支出在总体上,并不存在很大的差异,八种城镇和农村的人均支出的趋势线走势大部分都是相同的,在对比分析中并未找到两者的区别。

第3章 山西省人均未来收支预测

3.1 arima模型

arima[5]预测模型将预测值表示为最新实际值和最新预测误差的线性函数,记作arma(p,q) (在不考虑差分的情况下)。其中p是拖尾,q是截尾。在建立arima模型前,需要进行平稳性检验。平稳性检验要求时间序列所得到的的拟合曲线在未来一段时间内仍能顺着现有的状态延续下去,也就是时间序列的均值和方差不能发生很大的改变,如果时间序列不能满足平稳性,需要对数据进行差分的处理,直到检验的数据是一个平稳的时间序列。假如,对一个时间序列进行了d次的差分才通过了平稳性检验条件,其中的d代表差分的次数,记作arima(p,d,q)。

对数据进行平稳性检验,一般使用单位根检验法。单位根检验法的全名是augmented dickey-fuller test,通过dickey-fuller test[6] 进行判断数据是否平衡,判断是依据是在置信水平0.05下,如果dickey-fuller test检验的p值小于0.05,拒绝原假设,认为数据是平稳的,如果dickey-fuller test检验的p值大于0.05,不能拒绝原假设,不认为数据是平稳的[7]。接下来,需要为arima模型确定参数p、d和q。关于参数p和q是通过acf图和pacf图来确定,判定的标准如表3.1所示。

在这里插入图片描述
在python中主要使用statsmodels模型进行arima 模型拟合,具体的导入语句是from statsmodels.tsa.arima_model import arma。
对于arima模型的评价,评价的标准是arima模型的残差应该满足均值为0的正态分布,也就是对于任意的的滞后阶数和残差系数都应该等于零,也就是arima模型的残差满足独立正态分布的假设,则可认为arima模型较好的拟合时间序列数据。如果模型arima残差不满足独立正态分布的假设[8],则需要调整arima模型的参数、或者改变差分次数。
总结上述建立arima模型的步骤包括
(1) 确保时间训练是平稳的
(2) 找到一个(或几个)合理的模型(即选定可能的p值和q值)
(3) 拟合模型
(4) 从统计假设和预测准确性等角度评估模型
(5) 预测
接下来,将依次应用建立arima模型的步骤,对山西省1978年到2020年城镇居民人均收支情况进行预测。
3.2 预测收入情况
下面对山西省1978年到2020年城镇居民人均收入情况进行arima模型的拟合和预测。
首先,对1978年到2020年城镇居民人均收入数据进行平稳性检验。在未进行差分的处理下,经过adf检验的结果图下表3.2所示
表3.2 未进行差分adf检验人均收入的结果
inspection index value
test statistic value 1.447321
p-value 0.997319
lags used 1
number of observations used 41
critical value(1%) -3.600983
critical value(5%) -2.935135
critical value(10%) -2.605963
test statistic value 1.447321
p-value 0.997319
从表2未进行差分adf检验人均收入的结果中,p值是0.997319,大于了0.05,不能拒绝原假设,也就是认为不平稳。因此,得出结论原始数据是不符合平稳性的要求,应该进行一次差分的。
在进行一次差分的处理下,经过adf检验的结果图下表3.3所示
表3.3一次差分adf检验人均收入的结果
inspection index value
test statistic value -0.920445
p-value 0.781165
lags used 0
number of observations used 41
critical value(1%) -3.600983
critical value(5%) -2.935135
critical value(10%) -2.605963
test statistic value -0.920445
p-value 0.781165
从表3.3一次差分adf检验人均收入的结果中,p值是0.781165,大于了0.05,不能拒绝原假设,也就是认为不平稳。因此,得出结论一次差分数据是不符合平稳性的要求,应该再进行一次差分的。
在进行二次差分的处理下,经过adf检验的结果图下表3.4所示
表3.4 二次差分adf检验人均收入的结果
inspection index value
test statistic value -6.134734
p-value 0.0
lags used 1
number of observations used 39
critical value(1%) -3.6104
critical value(5%) -2.939109
critical value(10%) -2.608063
test statistic value -6.134734
p-value 0.0
从表3.4 二次差分adf检验人均收入的结果中,p值是0,小于了0.05,拒绝原假设,也就是认为平稳。因此,得出结论二次差分数据是符合平稳性的要求,则不需要继续进行差分。

图3.1 是1978年到2020年山西省居民人均收入(二次差分)的图,可以看出二次差分的数据是在0上下波动,相对于原始数据,更具有平衡性。
下一步是找到一个合理的模型(即选定可能的p值和q值)。在statsmodels模块中提供了arma_order_select_ic方法,可以快速计算得到最合理的p值和q值,具体导入的方法是from statsmodels.tsa import arma_order_select_ic[9],最终测试的结果的是p等于0,q等于2 。
下一步是模型的拟合,在 statsmodels模块中提供了arima方法,可以快速的拟合airma模型,具体的导入语句是from statsmodels.tsa.arima_model import arima。airma的参数分别是p等于0,d等于2,q等于2。
训练的airma模型通过summary方法可以查看,具体的表现如下表3.5所示。
表3.5 预算收入模型表现
dep. variable: d2.可支配收入 no. observations: 41
model: arima(0, 2, 2) log likelihood -273.886
method: css-mle s.d. of innovations 191.753
date: thu, 10 mar 2022 aic 555.773
time: 17:03:46 bic 562.627
sample: 2 hqic 558.269

coef	std err	z	p>|z|	[0.025	0.975]

const 37.5122 14.920 2.514 0.012 8.269 66.755
ma.l1.d2.可支配收入 -0.1235 0.152 -0.813 0.416 -0.421 0.174
ma.l2.d2.可支配收入 -0.4090 0.147 -2.779 0.005 -0.697 -0.121

roots
real imaginary modulus frequency
ma.1 1.4200 +0.0000j 1.4200 0.0000
ma.2 -1.7218 +0.0000j 1.7218 0.5000
在上表3.5预算收入模型表现中,可以得出模型的评价指标aic等于555.773,bic等于562.627,aic全称akaike information criterion[10],翻译过来是赤池信息准则,可以用来比较模型,它考虑了模型的统计拟合度以及用来拟合的参数数目。一般来说,aic值越小的模型越好。预算收入模型aic并不是很高,因此认为airma模型拟合和预测效果较好。
在模型训练好的情况下,对之前的数据进行预测,绘制了预测值和真实值的图,如图3.2所示。

图3.2 1978年到2020年山西省居民人均收入预测情况
从1978年到2020年山西省居民人均收入预测情况图8中看出,预测和真实的结果非常的接近,说明了模型预测能力非常的好。在此,对之后的5年进行预测,得到的预测结果分别是26580.98763197, 28159.87752293, 29776.27957439, 31430.19378634和33121.62015878。
最后,对模型的残差进行判断,测试arima残差是否满足独立正态分布的假设。主要使用的scipy 模块中的kstest方法,具体的导入语句是from scipy.stats import kstest。得到的结果是pvalue约等于0,小于0.05,因此满足了独立正态分布的假设,满足了上述的评价的标准。

预测支出情况
下面对山西省1978年到2020年城镇居民人均支出情况进行arima模型的拟合和预测。
首先,对1978年到2020年城镇居民人均支出数据进行平稳性检验。在未进行差分的处理下,经过adf检验的结果图下表3.6所示
表3.6 未进行差分adf检验人均支出的结果
inspection index value
test statistic value -3.163312
p-value 0.022209
lags used 7
number of observations used 35
critical value(1%) -3.632743
critical value(5%) -2.94851
critical value(10%) -2.613017
test statistic value -3.163312
p-value 0.022209

从表3.6未进行差分adf检验人均支出的结果中,p值是0.022209,小于了0.05,拒绝原假设,也就是认为平稳。因此,得出结论未进行差分人均支出数据是符合平稳性的要求,则不需要继续进行差分。

图3.3 1978年到2020年山西省居民人均支出(未进行差分)
图3.3 是1978年到2020年山西省居民人均支出(未进行差分)的图,可以看出未进行差分人均支出数据看上来涨幅虽然很大,并没有很大的波动。但是在训练arima模型中,arima模型认为是不平稳的,也就是滞后多项式具有季节性单位根。通常的处理方法是对原先处理进行多次差分,以便于满足arima模型的条件。
经过arima模型验证,只有进行二次差分的数据才能满足模型训练的要求。因此,还是需要对1978年到2020年山西省居民人均支出进行二次差分,即便adf检验的结果是平衡的。
下一步是找到一个合理的模型(即选定可能的p值和q值)。在statsmodels模块中提供了arma_order_select_ic方法,可以快速计算得到最合理的p值和q值,具体导入的方法是from statsmodels.tsa import arma_order_select_ic,最终测试的结果的是p值等于2,q值等于2 ,d值等于2
下一步是模型的拟合,在 statsmodels模块中提供了arima方法,可以快速的拟合airma模型,具体的导入语句是from statsmodels.tsa.arima_model import arima。训练的airma模型通过summary方法可以查看,具体的表现,如下表3.7所示。
表3.7 预算支出模型表现
dep. variable: d2.消费支出 no. observations: 41
model: arima(2, 2, 2) log likelihood -281.388
method: css-mle s.d. of innovations 225.746
date: thu, 10 mar 2022 aic 574.776
time: 17:47:02 bic 585.057
sample: 2 hqic 578.520

coef std err z p>|z| [0.025 0.975]
const 13.6246 17.152 0.794 0.427 -19.994 47.243
ar.l1.d2.消费支出 0.8011 0.223 3.594 0.000 0.364 1.238
ar.l2.d2.消费支出 -0.7818 0.168 -4.657 0.000 -1.111 -0.453
ma.l1.d2.消费支出 -1.2576 0.175 -7.204 0.000 -1.600 -0.915
ma.l2.d2.消费支出 0.7210 0.211 3.421 0.001 0.308 1.134

roots
real imaginary modulus frequency
ar.1 0.5123 -1.0083j 1.1309 -0.1752
ar.2 0.5123 +1.0083j 1.1309 0.1752
ma.1 0.8722 -0.7914j 1.1777 -0.1173
ma.2 0.8722 +0.7914j 1.1777 0.1173

在上表3.7预算支出模型表现中,可以得出模型的评价指标aic等于574.776,bic等于585.057,预算支出模型aic并不是很高,因此认为airma模型拟合和预测效果较好。在模型训练好的情况下,对之前的数据进行预测,绘制了预测值和真实值的图,如图3.4所示。
在这里插入图片描述

图3.4 1978年到2020年山西省居民人均支出预测情况
从1978年到2020年山西省居民人均支出预测情况图10中看出,预测和真实的结果非常的接近,说明了模型预测能力非常的好。在此,对之后的5年进行预测,得到的预测结果分别是16091.34984492, 17043.15472906, 18101.48568655, 18794.77048418 和19125.70188887
最后,对模型的残差进行判断,得到的结果是pvalue约等于0,小于0.05,因此满足了独立正态分布的假设,满足了上述的评价的标准

第4章 结论与总结

基于2020年山西统计年鉴全省居民人均收支情况的数据,使用python做出了具体的数据分析,分为收支分析和对比分析。
其中收支分析的主要内容包括,通过matpltlib绘制了1978年到2020年山西省人均收支情况,其中山西居民的收入始终大于支出,但从开始的人均收支的差距非常的小,到现在人均收支的差距非常的大,得到居民的生活水平在不断提高,居民自由分配的财产在增加。分别绘制了1978年到2020年山西省人均各种收入和支出占比情况,山西居民的收入主要来自工资性收入,转移净收入占比在逐年上升,居民的支出主要来自食品烟酒,但是比重在逐年降低,生活用品及服务和医疗保健在逐年上升,居住占比在逐年上升,说明了当前的房价这几年来的上涨非常高。
其中对比分析的主要内容包括,通过matpltlib绘制了1978年到2020年山西省农村和城镇人均收支对比,1978年到2020年山西省农村和城镇人均收入对比和1978年到2020年山西省农村和城镇人均支出对比。其中,发现了山西农村居民的收入还不如城镇居民支出高,说明了农村和城镇的收入和支出的不平衡,造成了贫富差距巨大。山西省城镇人均收入主要依靠的还是工资性收入,占比稳定在0.6,相对于农村而言,工资性收入占1985年到2000年出现了大幅度下降,说明了当时农村就业岗位非常少。在200年之前国家补助的对象以城镇为主,2000以后补助的重心集中在农村。山西省城镇和农村的人均支出在总体上,并不存在很大的差异。
其中预测收入主要内容包括,对1978年到2020年城镇居民人均收入数据进行平稳性检验,选择了二次差分数据,arima模型是arima(0,2,2), 对之后的5年进行预测,得到的预测结果分别是26580.98763197, 28159.87752293, 29776.27957439, 31430.19378634和33121.62015878。
其中预测支出主要内容包括,对1978年到2020年城镇居民人支出数据进行平稳性检验,同样选择了二次差分数据,arima模型是arima(2,2,2), 对之后的5年进行预测,得到的预测结果分别是16091.34984492, 17043.15472906, 18101.48568655, 18794.77048418 和19125.70188887。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com