Python数据分析之房价预测
学习数据分析的第一次练手项目。从网上爬取关于房价的相关数据属性来分析房价,并且基于一些属性来预测房价,使用的是网格搜索算法。相关的数据文件和完整代码可以从文末获取。
GridSearchCV介绍:
能够系统地遍历多种参数组合,通过交叉验证确定最佳效果参数;他能够自动调参,只要把参数输进去,就能给出最优化的结果和参数,适合于小数据集。
一、需要的相关库:
(1)numpy
(2)pandas
(3)matplotlib
(4)seaborn
(5)scikit-learn
以上所有库都能通过 pip下载,在用之前要先去看看官方API,英文看不懂可以去菜鸟教程看看。
二、代码部分:
(一)提取所需属性保存到CSV中
将房价数据文件中的price、bedrooms、sqft_living、grade这几列提取到另一个新的CSV中保存,方便后续的进行:
(二)数据分析并实现可视化
绘制属性之间的可视化图表,通过图表直观展示属性值对于房价的影响程度。在绘制之前先看数据完整程度,是否需要进行特征工程将缺失值、异常值数据处理好。(tip:这里没有进行特征工程,会影响后面的建模预测)
绘制出来的图表:
图1 居室面积与房价的关系图
图2 卧室个数、等级与房价的关系图
图3 各属性关系散点图
三、数据划分
划分数据为两部分,分别为训练数据和测试数据,可以自己控制训练数据多少,这里训练数据为70%,剩余30%用于测试。
四、建立模型计算R2分数
用网格搜索算法建立模型,通过交叉验证对参数空间进行求解,寻找最佳的参数。
五、获取最优模型并预测房价
获取到的score仅为0.61,准确度不是很高,可能原因是没有对缺失异常值进行处理,没有进行调参。
最后显示的结果为:
所需CSV数据及完整代码地址:https://github.com/songtown/data_Analysis




版权说明:
1.版权归本网站或原作者所有;
2.未经本网或原作者允许不得转载本文内容,否则将视为侵权;
3.转载或者引用本文内容请注明来源及原作者;
4.对于不遵守此声明或者其他违法使用本文内容者,本人依法保留追究权等。