python 线性回归模型预测国民GDP值

本文涉及的产品
模型训练 PAI-DLC,100CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
简介: python 线性回归模型预测国民GDP值

使用线性回归模型预测国民GDP

 

数据准备

1. import numpy as np
2. import pandas as pd
3. import matplotlib.pyplot as plt
4. 
5. plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
6. plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号
7. 
8. df = pd.read_excel('./tax.xlsx', index_col='年份')
9. df.head(10)
tax GDP
年份
1978 519.28 3645.22
1979 537.82 4062.58
1980 571.70 4545.62
1981 629.89 4889.46
1982 700.02 5330.45
1983 775.59 5985.55
1984 947.35 7243.75
1985 2040.79 9040.74
1986 2090.73 10274.38
1987 2140.36 12050.62

数据处理

1. df.describe()
2. # 对数据进行描述分析

1. plt.figure(figsize=(10.,6))  # 设置图框大小尺寸
2. 
3. plt.scatter(df.iloc[:,1], df.iloc[:,0], c='r', marker='o')
4. 
5. plt.xlabel('国民生产总值')
6. plt.ylabel('税收')
7. plt.title('税收与国民生产总值')
8. 
9. plt.show()

数据建模

1. np.array(df.iloc[:,1]).reshape([-1,1])#GDP
2. np.array(df.iloc[:,0]).reshape([-1,1])#tax
1. # 计算
2. 
3. x = np.array(df.iloc[:, 1]).reshape([-1, 1]) # 国民生产总值
4. y = np.array(df.iloc[:, 0]).reshape([-1,1]) # 税收
5. 
6. b = ((x - x.mean()) * (y - y.mean())).sum() / np.power(x - x.mean(), 2).sum()
7. a = y.mean() - b * x.mean()
8. 
9. print("手工计算的公式的斜率为{} 截距为{}".format(str(b)[:8], str(a)[:8]))

 

1. x = np.array(df.iloc[:, 1]) # 国民生产总值
2. y = np.array(df.iloc[:, 0]) # 税收
3. cols = ['GDP']
4. x = pd.DataFrame(x, columns=cols)
5. x
1. #利用第三方sklearn计算
2. from sklearn.linear_model import LinearRegression
3. 
4. model = LinearRegression()
5. reg = model.fit(x, y)
6. #回归系数 回归截距项
7. [reg.coef_.round(4), reg.intercept_.round(4)]

 

 

绘制拟合曲线

1. #利用sklearn库函数计算拟合度R2
2. from sklearn.metrics import r2_score
3. 
4. y_pred=reg.predict(x)
5. r2=r2_score(y,y_pred).round(6)
6. r2

 

1. #3绘制拟合曲线
2. plt.figure()
3. 
4. x = np.array(df.iloc[:, 1]) # 国民生产总值
5. y = np.array(df.iloc[:, 0]) # 税收
6. 
7. plt.scatter(x, y, label='actual', c='r', marker='o')
8. 
9. plt.plot(x, y_pred)
10. 
11. plt.xlabel('国民生产总值')
12. plt.ylabel('税收')
13. plt.title('税收与国民生产总值')
14. 
15. plt.show()

回归分析是确定预测属性(数值型)与其他变量间相互依赖的定量。关系的最常用的统计学方法。包括线性回归、非线性回归、Logistic回归、岭回归、主成分回归、偏最小二乘回归等模型。

 

相关文章
|
26天前
|
数据采集 数据可视化 数据挖掘
金融波动率的多模型建模研究:GARCH族与HAR模型的Python实现与对比分析
本文探讨了金融资产波动率建模中的三种主流方法:GARCH、GJR-GARCH和HAR模型,基于SPY的实际交易数据进行实证分析。GARCH模型捕捉波动率聚类特征,GJR-GARCH引入杠杆效应,HAR整合多时间尺度波动率信息。通过Python实现模型估计与性能比较,展示了各模型在风险管理、衍生品定价等领域的应用优势。
231 66
金融波动率的多模型建模研究:GARCH族与HAR模型的Python实现与对比分析
|
2月前
|
机器学习/深度学习 数据可视化 TensorFlow
使用Python实现深度学习模型的分布式训练
使用Python实现深度学习模型的分布式训练
193 73
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费市场分析的深度学习模型
使用Python实现智能食品消费市场分析的深度学习模型
152 36
|
2月前
|
机器学习/深度学习 数据采集 供应链
使用Python实现智能食品消费需求分析的深度学习模型
使用Python实现智能食品消费需求分析的深度学习模型
96 21
|
2月前
|
机器学习/深度学习 数据采集 搜索推荐
使用Python实现智能食品消费偏好预测的深度学习模型
使用Python实现智能食品消费偏好预测的深度学习模型
113 23
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费习惯预测的深度学习模型
使用Python实现智能食品消费习惯预测的深度学习模型
159 19
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费趋势分析的深度学习模型
使用Python实现智能食品消费趋势分析的深度学习模型
154 18
|
2月前
|
机器学习/深度学习 数据采集 供应链
使用Python实现智能食品消费需求预测的深度学习模型
使用Python实现智能食品消费需求预测的深度学习模型
100 10
|
2月前
|
机器学习/深度学习 数据采集 搜索推荐
使用Python实现深度学习模型:智能食品消费行为预测
使用Python实现深度学习模型:智能食品消费行为预测
103 8
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费模式预测的深度学习模型
使用Python实现智能食品消费模式预测的深度学习模型
81 2

热门文章

最新文章