第八章 财政收入预测分析
实训
实训1 求取企业所得税各特征间的相关系数
import numpy as np
import pandas as pd
inputfile= './income_tax.csv'
data= pd. read_csv( inputfile)
print ( '相关系数矩阵为:' , np. round ( data. corr( method= 'pearson' ) , 2 ) )
相关系数矩阵为: year x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 y
year 1.00 1.00 0.98 0.97 0.97 0.95 -0.89 0.95 0.98 0.93 0.97 0.99
x1 1.00 1.00 0.99 0.98 0.98 0.95 -0.89 0.97 0.99 0.93 0.98 0.99
x2 0.98 0.99 1.00 0.99 0.98 0.92 -0.89 0.99 0.98 0.90 0.99 0.98
x3 0.97 0.98 0.99 1.00 0.96 0.92 -0.91 0.99 0.98 0.91 0.99 0.97
x4 0.97 0.98 0.98 0.96 1.00 0.90 -0.82 0.95 0.97 0.92 0.96 0.99
x5 0.95 0.95 0.92 0.92 0.90 1.00 -0.91 0.88 0.96 0.92 0.94 0.95
x6 -0.89 -0.89 -0.89 -0.91 -0.82 -0.91 1.00 -0.87 -0.91 -0.84 -0.92 -0.88
x7 0.95 0.97 0.99 0.99 0.95 0.88 -0.87 1.00 0.97 0.86 0.98 0.95
x8 0.98 0.99 0.98 0.98 0.97 0.96 -0.91 0.97 1.00 0.95 0.99 0.99
x9 0.93 0.93 0.90 0.91 0.92 0.92 -0.84 0.86 0.95 1.00 0.91 0.95
x10 0.97 0.98 0.99 0.99 0.96 0.94 -0.92 0.98 0.99 0.91 1.00 0.98
y 0.99 0.99 0.98 0.97 0.99 0.95 -0.88 0.95 0.99 0.95 0.98 1.00
实训2 选取企业所得税预测关键特征
from sklearn. linear_model import Lasso
lasso= Lasso( normalize= True , max_iter= 10000 )
lasso. fit( data. iloc[ : , 1 : 11 ] , data[ 'y' ] )
print ( '相关系数为:' , np. round ( lasso. coef_, 5 ) )
相关系数为: [ 1.61300000e-02 -1.05300000e-02 -5.01000000e-03 3.87999184e+03
-1.66000000e-03 -9.72594842e+03 2.42900000e-02 -3.23400000e-02
7.08000000e-03 8.41000000e-03]
print ( '相关系数非零个数为:' , np. sum ( lasso. coef_!= 0 ) )
相关系数非零个数为: 10
mask= lasso. coef_ != 0
print ( '相关系数是否为0:' , mask)
相关系数是否为0: [ True True True True True True True True True True]
outputfile= './new_reg_data1.csv'
mask = np. append( mask, True )
mask