当时认为起初的分析逻辑混乱,模型单一,从这两个角度进行改进继续分析。
未进行再次加工,代码见资源中的exploration2

问题背景及重述

想法最初产生于如下背景:目前的租房市场中租房一方往往处于弱势,不仅需要承担中介费还需要承担额外的风险,其中一种就来自于部分黑中介为节约成本不尽信息保障义务甚至于提供虚假信息为自身牟利,因而在看到链家筛选出的一系列客观数据中还额外标着“必看好房”的主观推荐尤为刺眼;事实上,租房者不大具有总结筛选众多客观数据的能力,因而十分依赖“必看好房”这一推荐。结合这两点引出了这一问题最终的目标,“必看好房”这个标签是否真实可靠,也就是之前报告所说的是否真的好?
接下来的问题是一般认为的“必看好房”应该是什么样的?重新翻查了链家自己的解释,链家在二手房交易板块对“必看好房”标签解释为性价比高的稀缺好房。之前报告中将目标问题写的比较复杂“在其它条件相同时具有价格优势”,也就是性价比高的意思。那么问题的主要目标,“必看好房”是否真的好,此时可以被直观表述为探索“必看好房”是否真的性价比较高。
事实上,明显有两点很让人疑惑,首先是之前没有讨论的稀缺性,在以单一指标分析“必看好房”时,发现它并没有所谓的稀缺性,甚至是相反的,如价格指标中,特别高价或低价的几条房源信息中,没有被标为“必看好房”的;区位指标中,房源数量较少的崇明,也出现没有一个房源被标为“必看好房”的现象。另一点在于通过综合排序呈现在租房信息第一页的二十条信息中仅5条被标为“必看好房”,占比25%,与“必看好房”在全部房源中占比24.87%基本一致,说明“必看好房”在综合排序上并没有优势,为其具有更高性价比再次打上问号。

基本思路

回到主要问题上,“必看好房”是否具有更高性价比?最为直接的思路是将性价比量化出来,把样本分为是“必看好房”与不是“必看好房”两组,比较性价比均值。更加严谨的做法则是把链家采集的租房数据看作对租房市场的抽样,而若将是否为必看好房视为两类的话,那么该问题,“必看好房”是否具有更高性价比,等价于对两组不同总体的样本的均值差进行假设检验,
以上方法的难度在于我们不是业内人士,没有对性价比的评估体系,实际上如果链家的同行有类似的性价比指标的合适构建方法,那么直接利用上述方法就可以判断出链家的“必看好房”是否具有更高性价比了。
注意到比较时实际已经将“必看好房”和非“必看好房”看作两类不同总体的样本而非一类样本某个特征的两个不同值了。
由于没有特别合适的性价比评价指标,因而考虑从性价比定义出发,在房子的各类因素相同时,比较“必看好房”与非“必看好房”的价格高低。但问题在于对于一个“必看好房”,不可能找到除价格外各类因素与它完全相同的非“必看好房”,也就无从比较价格高低,因而,希望利用非“必看好房”数据训练一个价格预测模型,将价格作为目标标签,把“必看好房”的其它特征值代入相当于生成一个除价格外各类因素与它完全相同的非“必看好房”,并且我们还预测除了它的价格,把这个价格与“必看好房”的价格比较也就比出了性价比的高低,从而验证结论。
以上是之前的做法,事实上,不一定要选择价格预测的方法,我将面积作为预测的目标构建预测模型,比较除面积外其它因素相同的“必看好房”与非“必看好房”的面积大小,同样可以比较出性价比高低;当然,我将预测目标改成一个分类值也是可以的,比如说朝向,一般认为其它条件相同时朝南更具性价比,那么此时就需要一个分类模型,但我觉得这并不好,原因是分类模型在这里解释性不强,如比较南北来比性价比说服力差,并且无法像之前的回归中一样有一个性价比差多少的概念。

验证结论

下面尝试换方法(假设检验)、换预测目标(面积)、换模型(KNN)验证是否能有相近结论。

假设检验

回到思路的第一步,尝试构建性价比指标,此时类似两组样本的假设检验或许可以用于验证结论。
首先,汲取之前的经验,将数据范围限定于租金在25000 元/月以下的房源,其次构建一个自己认可的性价比指标,对某个房源的性价比指标记为
v = (该区域平均每平方租金+该街道平均每平方租金)/(该房源每平方租金*2)
此时得到“必看好房”与非“必看好房”性价比指标v1,v2。对应均值、方差、样本量分别为:(1.117614,1.094020) , (0.08818, 0.14374), (3596,9849), 计算Z 值为3.77对应单边检验的置信概率大于99.99%,即超过99.99%认为“必看好房”性价比更高,可以验证我们回归模型的结论。
分析效果出乎意料的原因可能是性价比指标构建时只采了认为对性价比指标影响较大的因素,放大了影响。

KNN

利用KNN模型验证时,此处仅需将KNN代替线性回归模型进行预测即可,得到的学习曲线如下,发现k取6时R2最高。(5折交叉验证)

将K=6时KNN 评估指标与线性回归的评估指标一同比较如下图,

由上表知,KNN得到的预测模型效果弱于LR,但都能验证结论,即“必看好房”确实更具性价比。

但同时注意到,两者模型的偏差相近,但百分比却明显不同让人疑惑,两模型得到的“必看好房”预测价格与实际价格的描点图如下,从中可见LR对于低价格房源价格预测偏低,KNN对于低价格房源价格预测偏高,这可能是样本分布不均引起的,KNN对于低价格房源预测时会接近样本较多的中间价格房源的点,从而导致低价格房源价格预测偏高。

面积预测

根据思路中的分析,同样可以通过,利用非“必看好房”数据训练一个面积预测模型,将面积作为目标标签,把“必看好房”的其它特征值代入相当于生成一个除面积外各类因素与它完全相同的非“必看好房”,并且我们还预测除了它的面积,把这个面积与“必看好房”的实际面积比较来评价性价比的高低,从而验证结论。
同样地,我们记录非“必看好房”面积预测模型回归系数R2 = 0.7579,“必看好房”预测面积与实际面积的平均偏差(预测面积高为正)-1.5355平方米,即预测面积比实际面积少1.5355平方米,即“必看好房”更具性价比,可以验证结论。面积作为客观数据,对其预测不大符合常理,这里仅用做验证结论。

模型精度

在通过不同途径验证了结论之后,最初目的已经基本达到了,但我们仍希望回到之前的价格预测模型中,探索预测模型能否继续提高精度。

特征工程

特征工程遇到的问题与之前假设检验中类似的问题,即没有对性价比指标构建的经验,于是还是从减少无关指标与控制可能存在的多重共线性入手。
首先考虑可能存在的多重共线性的问题,发现三个楼层分类特征和卧室数量、卫生间、客厅数量特征对应的方差膨胀系数较高,基本与相关性分析中发现的较高相关性指标一致,保留一个楼层分类特征与卧室数量特征外,其它特征去除后重新训练,发现模型R2并没有直接提高。
其次可以对方差过滤时的阈值进行探索,原模型取方差阈值为0.020.98对应模型具有34个特征,R2 为 0.6681,将阈值降低至0.010.99时对应模型具有66个, R2为0.7046,但发现偏差值随之下降。
(这一部分结果没达到预期,但没有想到好方法。)

特征重要性

由于我们为验证结论需要探讨有意义的偏差值,并没有进行正则化,此时已经完成结论的验证,单纯从评判模型角度,正则化后重新训练,目标是探讨租房价格预测模型中的重要特征。
正则化后训练的回归模型中,特征重要性即其特征参数值的绝对值。重要性前十的特征及其参数绝对值如下,可以明显看到除了面积和楼层外,其余全部是区域的分类指标,面积和区域的分类指标占据前十也符合了在假设检验中我们自己设计的性价比指标能够很好验证结论的现象,但出乎意料在于楼层层数竟然也是重要特征之一,在特征工程中确实不应当忽略其影响。

数据挖掘与数据分析项目链家租房数据(三)进一步探索与归纳相关推荐

  1. 数据挖掘与数据分析项目链家租房数据(一)数据爬虫

    数据挖掘与数据分析项目链家租房数据(一)数据爬虫 今日无聊将一个过去做的链家数据分析项目弄上来,当时是某面试,三天时间完成,主要是供大家抄代码和分享一下思考点,这一章是爬虫部分. 网站原图 结果截图 ...

  2. Python爬虫入门教程石家庄链家租房数据抓取

    1. 写在前面 这篇博客爬取了链家网的租房信息,爬取到的数据在后面的博客中可以作为一些数据分析的素材. 我们需要爬取的网址为:https://sjz.lianjia.com/zufang/ 2. 分析 ...

  3. 爬虫实战:链家租房数据爬取,实习僧网站数据爬取

    前面已经进行了爬虫基础部分的学习,于是自己也尝试爬了一些网站数据,用的策略都是比较简单,可能有些因素没有考虑到,但是也爬取到了一定的数据,下面介绍两个爬过的案例. 爬虫实战 链家网站爬取 实习僧网站爬 ...

  4. Python爬虫入门【16】:链家租房数据抓取

    1. 写在前面 作为一个活跃在京津冀地区的开发者,要闲着没事就看看石家庄这个国际化大都市的一些数据,这篇博客爬取了链家网的租房信息,爬取到的数据在后面的博客中可以作为一些数据分析的素材. 我们需要爬取 ...

  5. 简单的链家租房数据分析

    链家租房数据分析 以北京链家租房数据为例进行以下数据分析 对"户型"."面积"和"价格"以及每平米价格等信息进行简要的统计分析,如每平米价格 ...

  6. PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化...

    全文下载链接:http://tecdat.cn/?p=29480 作者:Xingsheng Yang 1 利用 python 爬取链家网公开的租房数据: 2 对租房信息进行分析,主要对房租相关特征进行 ...

  7. 链家租房市场分析(R爬虫、数据可视化)

    链家租房市场数据分析 文章目录 链家租房市场数据分析 前言 待解决的问题 链家网数据爬取 租房数据整理 租金.面积.户型的数据可视化 结论 前言 近年来,持续高昂的房价将很多想要安身立命的人挡在了买房 ...

  8. 利用xpath爬取链家租房房源数据并利用pandas保存到Excel文件中

    我们的需求是利用xpath爬取链家租房房源数据,并将数据通过pandas保存到Excel文件当中 下面我们看一下链家官网的房源信息(以北京为例) 如图所示,我们通过筛选得到北京租房信息 那么我们需要将 ...

  9. 【机器学习报告】我用链家的数据做了一个超过链家模型的二手房房价预测模型

    我用链家的数据做的二手房房价预测模型,打败了链家自己的模型 前言 数据准备 爬虫准备 特征展示 变量统计性描述 数据处理 数据清洗与异常值过滤 数据截断 数据集划分: 特征处理 模型与分析 第一轮迭代 ...

最新文章

  1. DG环境数据库RMAN备份策略制定
  2. 使用 Proto 构建了一个简单但功能强大的 lambda 库的测试程序
  3. 计算机操作系统——死锁
  4. 环状进度条progress bar circle
  5. javafx查找子节点_JavaFX技巧29:使布局忽略不可见的节点
  6. 【Flink】Flink ChildFirstClassLoader loadClassWithoutExceptionHandling 空指针
  7. QT缓存QGraphicsView的背景图问题
  8. python3种基本数字类型_Python3基本数据类型
  9. threeJs 入门
  10. 《鸟哥的Linux私房菜》读书笔记
  11. 压测工具ab接口测试
  12. 【解决】WPS 2019 Windows版如何更换序列号
  13. Mybatis+Servlet+jsp
  14. 从 广义相对论 看到 “数学陷阱”
  15. 【重识云原生】第六章容器6.1.7.2节——cgroups原理剖析
  16. 单片机位寻址举例_基于80C51单片机位寻址编程
  17. 做程序界中的死神,获取自己的灵力修养
  18. 【日志篇】java日志的桥接器和适配器和异步日志
  19. Python做数据处理(二):贷款风险预测
  20. PyTorch入门: Kaggle 泰坦尼克幸存者预测

热门文章

  1. 软件项目管理 3.5.敏捷生存期模型
  2. wxpython制作excel表格_怎么做一个精美的excel表格
  3. 借助云开发,利用订阅消息,云函数路由实现小程序好友一对一聊天,添加好友等仿微信功能
  4. n阶奇数魔方阵c语言编程,n阶魔方阵C语言
  5. macbook无法打开移动硬盘 为什么mac上显示不了移动硬盘
  6. 肝肠轴——看不见的Crosstalk
  7. 老年人智能手机APP开发界面设计具体策略
  8. Android蓝牙系统框架和代码结构
  9. Linux 防火墙简介
  10. 分类计数原理与分步计数原理_分类or分步?计数原理别再傻傻分不清~