python做波士顿房价预测

#1. 导入相关包

import numpy as np #导入numpy科学计算包
import pandas as pd #导入pandas数据分析包
from pandas import Series, DataFrame    #Series是类似于一维数组的对象
import matplotlib.pyplot as plt #导入绘图的包
import sklearn.datasets as datasets #直接从sklearn的datasets API中导入数据集,例如scikit-learn 内置有一些小型标准数据集,不需要从某个外部网站下载任何文件,用datasets.load_xx()加载。

from sklearn.model_selection import train_test_split  # train_test_split是交叉验证中常用的函数,功能是从样本中随机的按比例选取train data和test data。

from sklearn.metrics import r2_score  #导入评判标准,计算预测值和真实值的拟合程度
# 机器算法模型
 

{'data': array([[6.3200e-03, 1.8000e+01, 2.3100e+00, ..., 1.5300e+01, 3.9690e+02,4.9800e+00],[2.7310e-02, 0.0000e+00, 7.0700e+00, ..., 1.7800e+01, 3.9690e+02,9.1400e+00],[2.7290e-02, 0.0000e+00, 7.0700e+00, ..., 1.7800e+01, 3.9283e+02,4.0300e+00],...,[6.0760e-02, 0.0000e+00, 1.1930e+01, ..., 2.1000e+01, 3.9690e+02,5.6400e+00],[1.0959e-01, 0.0000e+00, 1.1930e+01, ..., 2.1000e+01, 3.9345e+02,6.4800e+00],[4.7410e-02, 0.0000e+00, 1.1930e+01, ..., 2.1000e+01, 3.9690e+02,7.8800e+00]]),'target': array([24. , 21.6, 34.7, 33.4, 36.2, 28.7, 22.9, 27.1, 16.5, 18.9, 15. ,18.9, 21.7, 20.4, 18.2, 19.9, 23.1, 17.5, 20.2, 18.2, 13.6, 19.6,15.2, 14.5, 15.6, 13.9, 16.6, 14.8, 18.4, 21. , 12.7, 14.5, 13.2,13.1, 13.5, 18.9, 20. , 21. , 24.7, 30.8, 34.9, 26.6, 25.3, 24.7,21.2, 19.3, 20. , 16.6, 14.4, 19.4, 19.7, 20.5, 25. , 23.4, 18.9,35.4, 24.7, 31.6, 23.3, 19.6, 18.7, 16. , 22.2, 25. , 33. , 23.5,19.4, 22. , 17.4, 20.9, 24.2, 21.7, 22.8, 23.4, 24.1, 21.4, 20. ,20.8, 21.2, 20.3, 28. , 23.9, 24.8, 22.9, 23.9, 26.6, 22.5, 22.2,23.6, 28.7, 22.6, 22. , 22.9, 25. , 20.6, 28.4, 21.4, 38.7, 43.8,33.2, 27.5, 26.5, 18.6, 19.3, 20.1, 19.5, 19.5, 20.4, 19.8, 19.4,21.7, 22.8, 18.8, 18.7, 18.5, 18.3, 21.2, 19.2, 20.4, 19.3, 22. ,20.3, 20.5, 17.3, 18.8, 21.4, 15.7, 16.2, 18. , 14.3, 19.2, 19.6,23. , 18.4, 15.6, 18.1, 17.4, 17.1, 13.3, 17.8, 14. , 14.4, 13.4,15.6, 11.8, 13.8, 15.6, 14.6, 17.8, 15.4, 21.5, 19.6, 15.3, 19.4,17. , 15.6, 13.1, 41.3, 24.3, 23.3, 27. , 50. , 50. , 50. , 22.7,25. , 50. , 23.8, 23.8, 22.3, 17.4, 19.1, 23.1, 23.6, 22.6, 29.4,23.2, 24.6, 29.9, 37.2, 39.8, 36.2, 37.9, 32.5, 26.4, 29.6, 50. ,32. , 29.8, 34.9, 37. , 30.5, 36.4, 31.1, 29.1, 50. , 33.3, 30.3,34.6, 34.9, 32.9, 24.1, 42.3, 48.5, 50. , 22.6, 24.4, 22.5, 24.4,20. , 21.7, 19.3, 22.4, 28.1, 23.7, 25. , 23.3, 28.7, 21.5, 23. ,26.7, 21.7, 27.5, 30.1, 44.8, 50. , 37.6, 31.6, 46.7, 31.5, 24.3,31.7, 41.7, 48.3, 29. , 24. , 25.1, 31.5, 23.7, 23.3, 22. , 20.1,22.2, 23.7, 17.6, 18.5, 24.3, 20.5, 24.5, 26.2, 24.4, 24.8, 29.6,42.8, 21.9, 20.9, 44. , 50. , 36. , 30.1, 33.8, 43.1, 48.8, 31. ,36.5, 22.8, 30.7, 50. , 43.5, 20.7, 21.1, 25.2, 24.4, 35.2, 32.4,32. , 33.2, 33.1, 29.1, 35.1, 45.4, 35.4, 46. , 50. , 32.2, 22. ,20.1, 23.2, 22.3, 24.8, 28.5, 37.3, 27.9, 23.9, 21.7, 28.6, 27.1,20.3, 22.5, 29. , 24.8, 22. , 26.4, 33.1, 36.1, 28.4, 33.4, 28.2,22.8, 20.3, 16.1, 22.1, 19.4, 21.6, 23.8, 16.2, 17.8, 19.8, 23.1,21. , 23.8, 23.1, 20.4, 18.5, 25. , 24.6, 23. , 22.2, 19.3, 22.6,19.8, 17.1, 19.4, 22.2, 20.7, 21.1, 19.5, 18.5, 20.6, 19. , 18.7,32.7, 16.5, 23.9, 31.2, 17.5, 17.2, 23.1, 24.5, 26.6, 22.9, 24.1,18.6, 30.1, 18.2, 20.6, 17.8, 21.7, 22.7, 22.6, 25. , 19.9, 20.8,16.8, 21.9, 27.5, 21.9, 23.1, 50. , 50. , 50. , 50. , 50. , 13.8,13.8, 15. , 13.9, 13.3, 13.1, 10.2, 10.4, 10.9, 11.3, 12.3,  8.8,7.2, 10.5,  7.4, 10.2, 11.5, 15.1, 23.2,  9.7, 13.8, 12.7, 13.1,12.5,  8.5,  5. ,  6.3,  5.6,  7.2, 12.1,  8.3,  8.5,  5. , 11.9,27.9, 17.2, 27.5, 15. , 17.2, 17.9, 16.3,  7. ,  7.2,  7.5, 10.4,8.8,  8.4, 16.7, 14.2, 20.8, 13.4, 11.7,  8.3, 10.2, 10.9, 11. ,9.5, 14.5, 14.1, 16.1, 14.3, 11.7, 13.4,  9.6,  8.7,  8.4, 12.8,10.5, 17.1, 18.4, 15.4, 10.8, 11.8, 14.9, 12.6, 14.1, 13. , 13.4,15.2, 16.1, 17.8, 14.9, 14.1, 12.7, 13.5, 14.9, 20. , 16.4, 17.7,19.5, 20.2, 21.4, 19.9, 19. , 19.1, 19.1, 20.1, 19.9, 19.6, 23.2,29.8, 13.8, 13.3, 16.7, 12. , 14.6, 21.4, 23. , 23.7, 25. , 21.8,20.6, 21.2, 19.1, 20.6, 15.2,  7. ,  8.1, 13.6, 20.1, 21.8, 24.5,23.1, 19.7, 18.3, 21.2, 17.5, 16.8, 22.4, 20.6, 23.9, 22. , 11.9]),'feature_names': array(['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD','TAX', 'PTRATIO', 'B', 'LSTAT'], dtype='<U7'),'DESCR': ".. _boston_dataset:\n\nBoston house prices dataset\n---------------------------\n\n**Data Set Characteristics:**  \n\n    :Number of Instances: 506 \n\n    :Number of Attributes: 13 numeric/categorical predictive. Median Value (attribute 14) is usually the target.\n\n    :Attribute Information (in order):\n        - CRIM     per capita crime rate by town\n        - ZN       proportion of residential land zoned for lots over 25,000 sq.ft.\n        - INDUS    proportion of non-retail business acres per town\n        - CHAS     Charles River dummy variable (= 1 if tract bounds river; 0 otherwise)\n        - NOX      nitric oxides concentration (parts per 10 million)\n        - RM       average number of rooms per dwelling\n        - AGE      proportion of owner-occupied units built prior to 1940\n        - DIS      weighted distances to five Boston employment centres\n        - RAD      index of accessibility to radial highways\n        - TAX      full-value property-tax rate per $10,000\n        - PTRATIO  pupil-teacher ratio by town\n        - B        1000(Bk - 0.63)^2 where Bk is the proportion of black people by town\n        - LSTAT    % lower status of the population\n        - MEDV     Median value of owner-occupied homes in $1000's\n\n    :Missing Attribute Values: None\n\n    :Creator: Harrison, D. and Rubinfeld, D.L.\n\nThis is a copy of UCI ML housing dataset.\nhttps://archive.ics.uci.edu/ml/machine-learning-databases/housing/\n\n\nThis dataset was taken from the StatLib library which is maintained at Carnegie Mellon University.\n\nThe Boston house-price data of Harrison, D. and Rubinfeld, D.L. 'Hedonic\nprices and the demand for clean air', J. Environ. Economics & Management,\nvol.5, 81-102, 1978.   Used in Belsley, Kuh & Welsch, 'Regression diagnostics\n...', Wiley, 1980.   N.B. Various transformations are used in the table on\npages 244-261 of the latter.\n\nThe Boston house-price data has been used in many machine learning papers that address regression\nproblems.   \n     \n.. topic:: References\n\n   - Belsley, Kuh & Welsch, 'Regression diagnostics: Identifying Influential Data and Sources of Collinearity', Wiley, 1980. 244-261.\n   - Quinlan,R. (1993). Combining Instance-Based and Model-Based Learning. In Proceedings on the Tenth International Conference of Machine Learning, 236-243, University of Massachusetts, Amherst. Morgan Kaufmann.\n",'filename': 'boston_house_prices.csv','data_module': 'sklearn.datasets.data'}

 
#2. 读取数据boston = datasets.load_boston()
data_name = boston['feature_names']
data_1 = boston['data'][:5]
train = boston.data # 样本
# print(train.shape[0])                #输出为506
target = boston.target # 标签
# print(target.shape[0])                #输出为506
# 切割数据样本集合测试集
X_train, x_test, y_train, y_true = train_test_split(train, target, test_size=0.2) 
#参数:所要划分的样本特征集;所要划分的样本结果;
# 20%测试集;80%训练集

#波士顿房价预测----Lasso
from sklearn.linear_model import Lasso # 线性回归算法Lasso回归,可用作特征筛选
# 模型训练
lasso = Lasso() #实例化lasso模型
lasso.fit(X_train, y_train)  # 模型训练
# 预测数据
y_pre_lasso = lasso.predict(x_test)    

#R^2 score,即决定系数,反映因变量的全部变异能通过回归关系被自变量解释的比例。计算公式:R^2=1-\frac{SSE}{SST}
lasso_score = r2_score(y_true, y_pre_lasso)

print('w = ', lasso.coef_) # w值
print('b = ', lasso.intercept_) # b值
print("训练集得分:{:.2f}".format(lasso.score(X_train, y_train)))
print("测试集得分:{:.2f}".format(lasso.score(x_test, y_true)))
# 绘图
# Lasso
plt.plot(y_true, label='true')
plt.plot(y_pre_lasso,'r:', label='lasso')
plt.legend()  #使用plt.legend()使上述plt.plot()代码产生效果
plt.show()
# plt.savefig('F:/新桌面/pred_GT.jpg')

#波士顿房价预测----Ridge Regression

#1.模型导入
#注意:其他包的导入如Lasso回归
from sklearn.linear_model import Ridge # 线性回归算法Ridge回归,岭回归
ridge = Ridge(alpha=1,max_iter=1000) # 模型实例化
#alpha:正则化力度,必须是一个正浮点数。正则化提升了问题的条件,减少了估计器的方差。
#max_iter:共轭梯度求解器的最大迭代次数。

ridge.fit(X_train, y_train) # 模型训练
# 模型预测
y_pre_ridge = ridge.predict(x_test)

# print('预测结果:', y_pre_ridge)
print('w = ', ridge.coef_) # w值
print('b = ', ridge.intercept_) # b值
print("训练集得分:{:.2f}".format(ridge.score(X_train, y_train)))
print("测试集得分:{:.2f}".format(ridge.score(x_test, y_true)))

ridge_score = r2_score(y_true, y_pre_ridge)   #决定系数,反映因变量的全部变异能通过回归关系被自变量解释的比例
#绘图
plt.plot(y_true, label='true')
plt.plot(y_pre_ridge,'r:', label='ridge')
plt.legend()
plt.show()
# plt.savefig(''F:/新桌面/回归曲线.jpg')

# 波士顿房价预测----Multi LinearRegression

#1.模型导入
#注意:其他包的导入如Lasso回归
from sklearn.linear_model import LinearRegression # 多元线性回归算法
linear= LinearRegression()
linear.fit(X_train, y_train)
# 预测数据
y_pre_linear = linear.predict(x_test)
print('预测结果:', y_pre_linear)
print('w = ', linear.coef_) # w值
print('b = ', linear.intercept_) # b值
print("训练集得分:{:.2f}".format(linear.score(X_train, y_train)))
print("测试集得分:{:.2f}".format(linear.score(x_test, y_true)))
linear_score = r2_score(y_true, y_pre_linear)
# 绘图
plt.plot(y_true, label='true')
plt.plot(y_pre_linear,'r:', label='linear', )
plt.legend()
plt.show()
# plt.savefig(''F:/新桌面/第三个曲线.jpg')

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/24136.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python实现波士顿房价预测---(1)

波士顿房价预测 目标 这是一个经典的机器学习回归场景&#xff0c;我们利用Python和numpy来实现神经网络。该数据集统计了房价受到13个特征因素的影响&#xff0c;如图1所示。 对于预测问题&#xff0c;可以根据预测输出的类型是连续的实数值&#xff0c;还是离散值&#xff…

加州房价篇 (一) : 了解数据

让我们先从加利福尼亚州的房价说起 如果没有接触过机器学习&#xff0c;需要先进行环境配置 在每次开始之前都需要先运行以下代码,不报错方可继续 # Python 的版本需要大于3.5 import sys assert sys.version_info > (3, 5)# Scikit-Learn的版本需要大于0.20 import sklear…

我用python分析买房数据

首先说明&#xff0c;这是一篇技术文章。 明年打算买房&#xff0c;媳妇这段时间总去看房子&#xff0c;这种状态持续了两个月&#xff0c;最近终于消停了。现在整个市场不明朗&#xff0c;我们也不确定换到哪里。不如先整理点数据&#xff0c;至少能监控一些区域价格&#xf…

波士顿房价数据集怎么不见了?

波士顿数据下载 消失的波士顿 OoO 做线性回归的同学大概率会用到一个数据集&#xff0c;即波士顿房价数据集&#xff0c;然而当你从sklearn下载该数据集时&#xff0c;你会惊讶地发现居然下载不了了&#xff01;&#xff01;&#xff01;起初我以为是什么别的原因导致数据集可能…

【Python数据分析】波士顿房价分析小例子

一、导入模块 %matplotlib inline #将生成的图片嵌入网页中 import matplotlib.pyplot as plt from sklearn import datasets from sklearn.feature_selection import SelectKBest,f_regression from sklearn.linear_model import LinearRegression …

基于pyspark的波士顿房价预测案例

目录 一、问题描述&#xff1a; 二、机器学习预测模型概述&#xff1a; 三、数据获取 四、数据预处理 五、模型训练 六、模型评估 本实验包含线性回归模型、梯度上升回归、决策树、随机森林、梯度回归树五种模型的创建和比较以及加载&#xff01; 一、问题描述&#xff…

python广深地区房价数据的爬取与分析

Python房产数据分析 1、数据爬取2、明确需求与目的数据预览提出问题 3.数据预处理数据清洗缺失值异常值(对连续性标签做处理&#xff09;异常值(对离散标签做处理&#xff09; 4、数据分析问题1、广东省房价的总体情况如何&#xff1f;问题2、高端小区都有哪些&#xff1f;问题…

ChatGPT的介绍与运用

ChatGPT的发展 ChatGPT是OpenAI团队开发的一种基于语言模型的对话系统 GPT-1&#xff1a; GPT&#xff08;Generative Pre-trained Transformer&#xff09;是OpenAI发布的第一个基于Transformer架构的语言模型。GPT-1于2018年发布&#xff0c;它使用了无监督学习的方法&#…

离线语音交互技术路线之语音合成(TTS)篇

在ChatGPT大行其道之际&#xff0c;我心血来潮想要研究研究如何实现离线语音交互&#xff0c;把它和ChatGPT相结合&#xff0c;自己尝试实现个语音助手玩玩。本篇文章主要先从整体上分析了离线语音交互的技术实现路线&#xff0c;以及每个环节可能用到的参考技术&#xff0c;然…

Linux中文显示乱码问题

终端输入命令回显的时候中文显示乱码&#xff0c;出现这个情况一般是由于没有安装中文语言包&#xff0c;或者设置的默认语言有问题导致的。 Linux系统与windows系统在编码上有显著的差别。Windows中的文件的格式默认是GBK(gb2312)&#xff0c;而Linux系统中文件的格式默认是UT…

解决中文乱码问题大全

相信大家在开发过程中遇到很多中文乱码的问题,为此小编在这里汇集了很多不同情况下怎么解决中文乱码,希望对大家有所帮助 1、IDEA控制台输出乱码 修改idea配置文件:找到idea的安装目录,在bin目录下找到dea64.exe.vmoptions和idea.exe.vmoptions这两个文件,分别在这两个文…

解决中文乱码的方法

今天跟路飞学习爬虫时&#xff0c;遇到的中文乱码。他提出了一种解决方法&#xff0c;而我在弹幕上也看到了一种方法。 法1&#xff1a;在响应数据时加一句 response.encoding response.apparent_encoding 法2&#xff1a; #通用处理中文乱码的解决方法img_name img_name.en…

中文乱码问题整理总结

目录 1、字符编码 2、乱码产生的原因 3、乱码解决方案 3.1、解决HTML页面中的中文问题&#xff1a; 3.2、解决JSP页面中的中文问题 3.3、解决Servlet响应结果的中文问题 3.4解决页面数据传输的中文问题 3.5、解决HTTP(get)请求中的中文问题 3.6、解决MySQL数据库的中文…

php echo中文乱码问题

用echo输出的中文显示成乱码&#xff0c; 其实应该是各种服务器脚本都会遇到这个问题&#xff0c; 根本还是编码问题&#xff0c; 一般来说出于编码兼容考虑大多的页面都将页面字符集定义为utf-8 这时候要正常显示中文需要转化一下编码方式&#xff0c;比如 echo iconv(“…

中文出现乱码最常见的几种方式解析

1、出现古文夹杂日韩文&#xff0c;以GBK读取UTF-8编码 2、出现方块形&#xff0c;以UTF-8读取GBK 3、各种符号&#xff0c;以ISO8859-1方式读取UTF-8 4、拼音码&#xff0c;带声调的字母&#xff0c;以ISO8859-1方式读取GBK 5、长度为奇数时&#xff0c;最后的字符变成问号&am…

SEO百度搜索引擎优化30min了解网站排名

目录 seo优化 介绍seo是什么 网站更新&#xff1a; 网站排名在21世纪的意义: 网站为电商引流 百度算法规则 排名流程 seo策略 规则——“学会在线球里玩” 单页面收录显示 必要条件——链接数量 日志统计——及时优化seo策略 降低识别难度 收录越多排名就越大吗 …

毕设项目《基于STM32的智能乒乓球捡球小车的设计与实现》从零开始过程笔记

毕设项目《基于STM32的智能乒乓球捡球小车的设计与实现》从零开始过程笔记 小车实物 前言 本文是后来记录而写&#xff0c;如有不足之处&#xff0c;欢迎批评指正。 如果您觉得文章写得不错&#xff0c;欢迎一键三连。&#xff08;比心 orz&#xff09; 目录 毕设项目《基于S…

全面剖析OpenAI发布的GPT-4比其他GPT模型强在哪里

最强的文本生成模型GPT-4 一、什么是GPT-4二、GPT-4的能力三、和其他GPT模型比较3.1、增加了图像模态的输入3.2、可操纵性更强3.3、复杂任务处理能力大幅提升3.4、幻觉、安全等局限性的改善3.6、风险和缓解措施改善更多安全特性3.7、可预测的扩展 四、与之前 GPT 系列模型比较五…

GPT-4 官方技术报告(译)

摘要 我们报告了GPT-4的开发情况&#xff0c;这是一个大规模的多模态模型&#xff0c;可以接受图像和文本输入并产生文本输出。虽然在许多现实世界的场景中&#xff0c;GPT-4的能力不如人类&#xff0c;但在各种专业和学术基准上表现出人类水平的性能&#xff0c;包括在模拟的律…

重磅突发!OpenAI正式推出多模态GPT-4

大家好&#xff0c;今天这篇文章是我的好朋友阿法兔翻译的&#xff0c;她凌晨熬夜研究了一下 OpenAI 推出的 GPT-4&#xff0c;基本把所有发布的内容重点都读完了&#xff0c;分享给大家&#xff0c;希望能给你一些启发。 作者 | OpenAI&TheVerge&Techcrunch 翻译 &am…