Reference
https://blog.csdn.net/Da___Vinci/article/details/83475793
基本上是原文照搬,但有稍微的增加,使得整个流程能在Python version 3.7顺利走通。
前言
财政收入的规模大小对一个国家来说具有十分重要的意义,本文章分别从财政收入的组成因素和财政收入的影响因素两个方面入手,对祖国1979-1999年度财政收入情况进行多因素分析。在财政收入影响因素分析上,除了通过理论选出因素并利用统计软件建立模型分析,还把影响财政收入的结构因素进行了个别分析,最后在分析结论的基础上,结合当前客观条件和政策因素对未来财政收入做了一定的期望。
数据
数据来自网络,一共含有9个因素,GDP、能源消费总量、从业人员总数、全社会固定资产投资总额、实际利用外资总额,全国城乡居民储蓄存款年底月、居民人均消费水平、消费品零售总额和居民消费价格指数。数据如下。
其中t: 年份;y:财政收入;x1:GDP;x2:能源消费总量;x3:从业人员总数;x4:全社会固定资产投资总额;x5:实际利用外资总额;x6:全国城乡居民储蓄存款年底月;x7:居民人均消费水平;x8:消费品零售总额;x9:居民消费价格指数
import pandas as pd
import numpy as np
from matplotlib import pyplot as plt
from sklearn.linear_model import LinearRegression
data = pd.read_csv('Revenue.csv', sep='\t')
data
data.plot()
image.png
data.describe()
image.png
data.corr()
image.png
data.corr()['y']
t 0.901941
y 1.000000
x1 0.985051
x2 0.862568
x3 0.829253
x4 0.984607
x5 0.946547
x6 0.995125
x7 0.986643
x8 0.990883
x9 0.934222
Name: y, dtype: float64
lrModel = LinearRegression()
y = data['y'].values.reshape(-1, 1)
x = data.iloc[:,2:]
x.plot()
image.png
lrModel.fit(x, y)
lrModel.score(x,y)
# 0.9971458875882132
alpha = lrModel.intercept_[0]
alpha
# 2425.6858933074127
beta = lrModel.coef_[0]
beta
# array([ 0.1000633 , -0.06393532, 0.06399272, -0.09941855,
# 6.08718343, -0.1251754 , -5.19932315, 1.07558855,
# -16.21937074])
最后公式为:
y =2425.6858933074127 + 0.1000633x1 - 0.06393532x2 + 0.06399272x3 - 0.09941855x4 + 6.08718343x5 - 0.1251754x6 - 5.19932315x7 + 1.07558855x8 - 16.21937074x9
网友评论