「实战」南京房价的秘密——准备篇

公众号:AI悦创

公众号最先发送!

本文给大家准备了房地产大数据,基于爬虫采集来自互联网的公开信息,数据可以分为 4块:

  • 小区信息
  • 二手房在售信息
  • 二手房成交信息
  • 租房信息

为了降低数据的清洗难度,提高实战的可重现性,爬虫在设计阶段注重考虑了数据采集的规整度,因此采集到的数据相对比较干净,但是距离直接用来可视化还是有相当距离的,本文,就来帮大家把这个坑填好~

房地产数据准备

房价,一个离我们很近又很远的词汇。很近是因为各路专家看空看多,各类政策隔三差五,一副好不热闹的样子;很远则是因为咱也不知道哪路专家说的对,也不清楚政策说的啥,就看看热闹。所以我们选择房价这个关键词,跟大家聊聊分析类的图表都是怎么绘制的。

本次提供的数据可以访问次链接:https://aiyc.lanzous.com/b00nvldhg 访问密码,请关注公众号:AI悦创。后台回复:fdc_data

还可以加入本公众号交流群一起交流学习,我在这里等你!

1、二手房历史成交数据

Chengjiao_NJ.csv 南京楼市近5年的二手房成交信息,主要信息字段如下:

字段样例数据
标题建康新村 2室1厅 49.07平米
朝向南 北
装修简装
基本信息中楼层(共7层) 1995年建板楼
标签近地铁
挂牌价挂牌173万
成交周期成交周期72天
成交日期2019.12.08
成交价163万
成交单价33218元/平

2、二手房在售数据

Ershoufang_NJ.csv 南京楼市12月份二手房挂牌信息,主要信息字段如下:

字段样例数据
数据采集日期20191226
来源南京房产网
城市定位南京二手房
区县定位浦口二手房
街道定位江浦街道二手房
小区定位东方熙龙山院二手房
当前房源当前房源
房源标题老山别墅双阳台可塑性高依山傍水
挂牌价795万
挂牌单价18575元/平米
小区东方熙龙山院
房屋户型7室1厅1厨3卫
所在楼层低楼层(共7层)
建筑面积428㎡
户型结构平层
套内面积390.61㎡
建筑类型板楼
房屋朝向
建筑结构钢混结构
装修情况毛坯
梯户比例一梯两户
配备电梯
产权年限70年
挂牌时间2019/6/21
交易权属商品房
上次交易2018/1/11
房屋用途普通住宅
房屋年限满两年
产权所属非共有
抵押信息有抵押300万元
房本备件未上传房本照片
房源标签地铁、VR房源
经度118.6338
纬度32.08735

3、小区基本信息

Xiaoqu_NJ.csv 南京市截止12月份的主要小区,主要信息字段如下:

字段样例数据
数据采集日期20191226
来源南京房产网
城市定位南京小区
区县定位鼓楼小区
街道定位福建路小区
小区定位萨家湾
地址(鼓楼福建路)铁路北街69号
标题萨家湾
热度2位用户已关注
参考均价28628元/㎡11月参考均价
建筑年代1990年建成
建筑类型板楼
物业费0.3元/平米/月
物业街道办事处(委员会)代管物业
开发商南京鼓楼城镇建设综合开发(集团)公司
楼栋总数23栋
房屋总数801户
附近房产中介三牌楼二店B店/鼓楼区三牌楼大街交通一村2号
经度118.7681
纬度32.0886

4、12月份南京可租房源,主要信息字段如下:

字段样例数据
标题整租奥克斯钟山府 3室1厅 南/北
区县玄武
街道仙鹤门
小区奥克斯钟山府
出租面积89㎡
朝向南北
户型3室1厅1卫
楼层低楼层(11层)
房源上架日期5天前维护
房源标签近地铁
租金1500 元/月

小区数据清洗

从上面的罗列看,房地产大数据的数据结构相似度是很高的,因此这里以小区的数据为例,进行一次数据清洗的详细说明。

小区的各项指标可以分为两类。

一类是文字标签项,比如城市、区县、街道、小区名、开发商、物业、建筑类型等,这些指标很难量化,我们的目标是进行清洗提纯,去除文字中的杂质,方便后续统计。

第二类是数值型字段,比如价格、楼栋数、房屋数、经度、维度等,我们对数据进行分析,剔除异常值,并统一计量单位,以及根据分析项做一些数据维度的转换。比如建筑年代,可以转化成建成年份。

image-20200901213612870

1. 删除关键信息为空的行

2. 丢弃无关信息列

3. 提取关键标签

观察"城市定位", “区县定位”, “街道定位”, "小区定位"四个字段,数据结构基本规整,为了整体效果,我们只需要删除"小区"关键词即可:

空值是处理字符串数据过程中常常会碰到的问题,这里为了能够顺利实现对空值的字符串替换,需要先把数据做一次字符串转化

删除目标列里的"小区"关键词

4. 提取信息中的关键数字

观察热度、参考均价、建筑年代等字段,是数字和文字的混合体。为了便于统计分析,需要把数字提取出来。一般来说,这类数据处理有2种方法,一种是利用数据的重复性,删除重复字符即可。另一种具有普适性的方法则是构建正则表达式,提取其中的整数或者浮点数。

Step 5: 剔除异常值

异常值是非常常见的一种数据情况,尤其是在爬虫采集的数据中,这种情况非常常见。比如我们这里的物业费:

显然这是超出常理的。但是在做数据可视化的过程中,也会伴随着对异常值的处理。因此这里我们暂时跳过这一步,在后续的可视化的过程中,我们再慢慢聊这个话题。

小区数据预览

经过简单的几个步骤,小区数据基本完成了标签化和数字化。

image-20200901220235855

我们查阅一下南京各区的小区数量:

输出:

可以发现鼓楼区、江宁区、秦淮区是最大的人口聚集地(小区数量最多)。熟悉南京城市的朋友应该知道,鼓楼区是南京传统的老城区;而秦淮区也属于老城区之一,著名景点有夫子庙;江宁区面积广阔,是南京的各类工业聚集地,这几年随着江宁区的城市开发逐渐完善,人气也越来越旺。

清洗后的数据要及时保存起来,供后续使用,因此这里我们推荐将之保存为 csv 格式:

# 保留列名,取消行索引
xiaoqu_raw.to_csv("Xiaoqu_NJ_format.csv", index=False)

数据清洗总的来说要服务于具体业务,因此在开始这项工作之前,要先完成顶层设计工作,比如哪些字段是要丢弃的,哪些是要保存的,哪些字段是要拆分提取的,那些是通知指标需要保存的,此类场景不一而足,还需要大家在工作中注意观察和积累。

本篇代码,公众号后台回复:fdc_code01 敬请期待下一篇文章的更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI悦创|编程1v1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值