20191104_1_相关性分析
程序员文章站
2024-03-05 15:22:43
...
图片是要求,做这个项目没遇到多少问题,因为是老乡,就一会就做完了,看出来大哥是非常想家的,想家里的各种好吃滴,性情中人,期待和大哥在老家相聚
import pandas as pd
#经行数据的读取
from scipy import stats
#利用内置函数进行T,F检验
import numpy as np
#经行数据的转换
from sklearn.linear_model import LinearRegression
#进行线性回归拟合
test=pd.read_excel('data.xlsx')
#进行数据的读取
test.head()
#查看数据的前5行
年份 | 国内旅游收入Y(亿元) | 国内生产总量(亿元) | 旅游人均花费(元) | 城镇居民人均旅游花费(元) | 农村居民人均旅游花费 (元) | 公路里程 (万公里) | 铁路里程(万公里) | 制度 | |
---|---|---|---|---|---|---|---|---|---|
0 | 1994 | 1023.5 | 48637.5 | 195.3 | 414.7 | 54.9 | 111.78 | 5.90 | 0 |
1 | 1995 | 1375.7 | 61339.9 | 218.7 | 464.0 | 61.5 | 115.70 | 5.97 | 0 |
2 | 1996 | 1638.4 | 71813.6 | 256.2 | 534.1 | 70.5 | 118.58 | 6.49 | 0 |
3 | 1997 | 2112.7 | 79715.0 | 328.1 | 599.8 | 145.7 | 122.64 | 6.60 | 0 |
4 | 1998 | 2391.2 | 85195.5 | 345.0 | 607.0 | 197.0 | 127.85 | 6.64 | 0 |
相关性分析
data=test.drop(['国内旅游收入Y(亿元)','制度'],axis=1)
#删除没有不需要进行运算的项
data.corr()
#通过corr列出相关性表
年份 | 国内生产总量(亿元) | 旅游人均花费(元) | 城镇居民人均旅游花费(元) | 农村居民人均旅游花费 (元) | 公路里程 (万公里) | 铁路里程(万公里) | |
---|---|---|---|---|---|---|---|
年份 | 1.000000 | 0.952538 | 0.966061 | 0.976979 | 0.941216 | 0.965176 | 0.945997 |
国内生产总量(亿元) | 0.952538 | 1.000000 | 0.971205 | 0.903729 | 0.961831 | 0.928085 | 0.989733 |
旅游人均花费(元) | 0.966061 | 0.971205 | 1.000000 | 0.945682 | 0.992297 | 0.917496 | 0.971065 |
城镇居民人均旅游花费(元) | 0.976979 | 0.903729 | 0.945682 | 1.000000 | 0.911933 | 0.937125 | 0.903507 |
农村居民人均旅游花费 (元) | 0.941216 | 0.961831 | 0.992297 | 0.911933 | 1.000000 | 0.886918 | 0.961750 |
公路里程 (万公里) | 0.965176 | 0.928085 | 0.917496 | 0.937125 | 0.886918 | 1.000000 | 0.897841 |
铁路里程(万公里) | 0.945997 | 0.989733 | 0.971065 | 0.903507 | 0.961750 | 0.897841 | 1.000000 |
回归分析
X=data
#子变量
y=test['国内旅游收入Y(亿元)']
#因变量
linreg = LinearRegression()
#调用函数
linreg.fit(X,y)
#通过函数进行模拟
LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None, normalize=False)
print (linreg.intercept_)
#输出常数项
print (linreg.coef_)
#输出系数
1282685.7525530097
[-6.51930861e+02 6.72869974e-02 -1.92976293e+01 1.40380907e+01
1.11478507e+01 -3.19039647e+01 2.60569416e+03]
#线性函数为y=1282685.7525530097-6.51930861e+02+6.72869974e-02 -1.92976293e+01+1.40380907e+01+1.11478507e+01 -3.19039647e+01 +2.60569416e+03
T检验
#https://www.cnblogs.com/IvyWong/p/10134012.html
stats.ttest_rel(test['城镇居民人均旅游花费(元)'],test['农村居民人均旅游花费 (元)'])
#ttest_ind函数
Ttest_relResult(statistic=31.167470983557163, pvalue=6.2907747913193846e-21)
F检验
stats.f_oneway(test['城镇居民人均旅游花费(元)'],test['农村居民人均旅游花费 (元)'])
#f_oneway函数
F_onewayResult(statistic=85.61876329986252, pvalue=3.019481312593332e-12)
下一篇: jQuery三级联动插件