摘要:自编爬虫从某二手房交易网爬取武汉市全市13个区范围内6月份所有挂牌二手房交易信息,包括房屋所在小区名称、房间数、单价、总价、所属区域等,存储在表格中;根据小区名称和所属区域从高德网络地图API获取小区经纬度;通过RGui进行数据排序显示;通过ArcGIS软件叠加房源点和行政区划图,制作房间热力图。分析房价高地分布情况,对二手房购房者提供参考借鉴意义。二手房交易网上的信息纯属市场行为,存在一定的不真实,总体算是可靠的,与在小区中介询问的调查价格基本一致。
1、爬取某房价网二手房交易价格,存储在csv文件
<<武汉市房价分布.csv>>
2、在RGui中导入数据:
mydata<-read.table(header=T,file="F:\\武汉市房价分布.csv",sep=",")
3、提取子数据集
wc<-subset(mydata,"区"="武昌")
4、绘制单个区的箱形图
boxplot(单价~区,mydata)
设置纵轴坐标单位,设置箱体颜色为lightblue,
boxplot(单价~区,mydata,col="lightblue")
以千元为单位,
boxplot(单价/1000~区,mydata,col="lightblue")
添加纵坐标标签,
boxplot(单价/1000~区,mydata,ylab="二手房单价(单位:千元)",col="lightblue")
4、清洗掉极值,如单价超过6万元的数据
5、对数据进行排序
对分组箱图按中位数进行逆序排列后显示:
> aggregate(.~区,data=mydata,mean)
区 小区全称 单价 省 市 地址 邮编 经度 纬度
1 蔡甸区 1665.875 10350.895 1 1 102.3711 420114 114.0867 30.53099
2 东西湖区 1580.328 14260.978 1 1 320.5690 420112 114.1852 30.64115
3 汉南区 1511.643 7002.554 1 1 450.6786 420113 114.081130.32355
4 汉阳区 1743.552 16095.344 1 1 571.2365 420105 114.2273 30.54636
5 洪山区 1439.315 16145.331 1 1 905.0126 420111 114.3861 30.52368
6 黄陂区 1576.626 10191.703 1 1 1226.0659 420116 114.3232 30.76294
7 江岸区 1725.614 20703.460 1 1 1484.5160 420102 114.2965 30.61917
8 江汉区 1653.395 19961.476 1 1 1814.8360 420103 114.2661 30.60400
9 江夏区 1639.555 13091.987 1 1 2074.5378 420115 114.3701 30.40724
10 硚口区 1693.725 18655.192 1 1 2303.4353 420104 114.2363 30.58428
11 青山区 1530.238 16611.338 1 1 2486.2615 420107 114.3999 30.62462
12 武昌区 1718.217 21570.117 1 1 2704.9765 420106 114.3265 30.55031
13 新洲区 1799.209 6063.743 1 12927.2230 420117 114.6385 30.71597
d[order(d$单价,decreasing=TRUE),]
区 小区全称 单价 省 市 地址 邮编 经度 纬度
12 武昌区 1718.217 21570.117 1 1 2704.9765 420106 114.3265 30.55031
7 江岸区 1725.614 20703.460 1 1 1484.5160 420102 114.2965 30.61917
8 江汉区 1653.395 19961.476 1 1 1814.8360 420103 114.2661 30.60400
10 硚口区 1693.725 18655.192 1 1 2303.4353 420104 114.2363 30.58428
11 青山区 1530.238 16611.338 1 1 2486.2615 420107 114.3999 30.62462
5 洪山区 1439.315 16145.331 1 1 905.0126 420111 114.3861 30.52368
4 汉阳区 1743.552 16095.344 1 1 571.2365 420105 114.2273 30.54636
2 东西湖区 1580.328 14260.978 1 1 320.5690 420112 114.1852 30.64115
9 江夏区 1639.555 13091.987 1 1 2074.5378 420115 114.3701 30.40724
1 蔡甸区 1665.875 10350.895 1 1 102.3711 420114 114.0867 30.53099
6 黄陂区 1576.626 10191.703 1 1 1226.0659 420116 114.3232 30.76294
3 汉南区 1511.643 7002.554 1 1 450.6786 420113 114.081130.32355
13 新洲区 1799.209 6063.743 1 12927.2230 420117 114.6385 30.71597
按中数排序
> aggregate(.~区,data=mydata,median)
区 小区全称 单价 省 市 地址 邮编 经度 纬度
1 蔡甸区 1609.5 9307.5 1 1 94.5 420114 114.0629 30.53492
2 东西湖区 1508.0 13964.0 1 1 318.5 420112 114.1941 30.64014
3 汉南区 1501.5 6595.5 1 1 452.5 420113 114.0813 30.31732
4 汉阳区 1798.0 16296.0 1 1 567.0 420105 114.2212 30.54925
5 洪山区 1335.5 17159.0 1 1 897.5 420111 114.3789 30.50579
6 黄陂区 1660.5 10561.0 1 11224.0 420116 114.3191 30.71850
7 江岸区 1771.5 19619.0 1 11482.5 420102 114.2943 30.61687
8 江汉区 1587.0 19330.0 1 11814.0 420103 114.2664 30.60592
9 江夏区 1662.0 12764.5 1 12073.5 420115 114.3727 30.40792
10 硚口区 1614.0 18238.0 1 12306.0 420104 114.2433 30.57883
11 青山区 1632.0 17366.0 1 12488.5 420107 114.3951 30.62510
12 武昌区 1857.0 21344.0 1 12710.0 420106 114.3260 30.54703
13 新洲区 2044.5 5944.5 1 1 2927.5 420117 114.576230.67016
> d[order(d$单价,decreasing=TRUE),]
区 小区全称 单价 省 市 地址 邮编 经度 纬度
12 武昌区 1718.217 21570.117 1 1 2704.9765 420106 114.3265 30.55031
7 江岸区 1725.614 20703.460 1 1 1484.5160 420102 114.2965 30.61917
8 江汉区 1653.395 19961.476 1 1 1814.8360 420103 114.2661 30.60400
10 硚口区 1693.725 18655.192 1 1 2303.4353 420104 114.2363 30.58428
11 青山区 1530.238 16611.338 1 1 2486.2615 420107 114.3999 30.62462
5 洪山区 1439.315 16145.331 1 1 905.0126 420111 114.3861 30.52368
4 汉阳区 1743.552 16095.344 1 1 571.2365 420105 114.2273 30.54636
2 东西湖区 1580.328 14260.978 1 1 320.5690 420112 114.1852 30.64115
9 江夏区 1639.555 13091.987 1 1 2074.5378 420115 114.3701 30.40724
1 蔡甸区 1665.875 10350.895 1 1 102.3711 420114 114.0867 30.53099
6 黄陂区 1576.626 10191.703 1 1 1226.0659 420116 114.3232 30.76294
3 汉南区 1511.643 7002.554 1 1 450.6786 420113 114.081130.32355
13 新洲区 1799.209 6063.743 1 12927.2230 420117 114.6385 30.71597
mydata<- mydata[order(mydata$房价中位数,decreasing=TRUE),]
boxplot(单价/1000~序号,mydata,ylab="二手房单价(单位:千元)",col="lightblue")
id | 区位 | 房价中位数 | 序号 |
01 | 武昌区 | 21570.117 | 01武昌区 |
02 | 江岸区 | 20703.46 | 02江岸区 |
03 | 江汉区 | 19961.476 | 03江汉区 |
04 | 硚口区 | 18655.192 | 04硚口区 |
05 | 青山区 | 16611.338 | 05青山区 |
06 | 洪山区 | 16145.331 | 06洪山区 |
07 | 汉阳区 | 16095.344 | 07汉阳区 |
08 | 东西湖区 | 14260.978 | 08东西湖区 |
09 | 江夏区 | 13091.987 | 09江夏区 |
10 | 蔡甸区 | 10350.895 | 10蔡甸区 |
11 | 黄陂区 | 10191.703 | 11黄陂区 |
12 | 汉南区 | 7002.554 | 12汉南区 |
13 | 新洲区 | 6063.743 | 13新洲区 |
在arcgis中做属性连接,给数据加上中位数排序倒序排序后制图如下:
boxplot(单价/1000~序号,mydata,ylab="二手房单价(单位:千元)",col="lightblue",main="武汉二手房交易价格按中位数分区排序统计图")
6、房价趋势分析
武汉市房价按区分析,较为集中的几个区中心城区有江岸区、江汉区、硚口区、青山区、汉阳区;远城区有东西湖区、蔡甸区、黄陂、汉南、新洲;
波动较大的有武昌、洪山、江夏,一定程度上存在房产市场过热,洪山区上市交易的楼盘为557,全市各区排名第一为,超过第二名30%,洪山区受东湖高新开发区、国家自贸区等开发板块政策刺激,增速迅猛,为未来楼盘看涨区域。
江汉、江岸存在部分变异值,包括极高和极低值,与老城区上市交易的棚户区和部分优质房源高价基本相符,同样作为老城区的硚口,仅存在极大值,和个别极小值,这与其基本完成棚户区改造相关。存在极大值的还有洪山区、汉阳、江夏、蔡甸、黄陂等,均为部分别墅,不在考察范围之列。
从房价集中程度来看武昌区、洪山区、江夏区存在较大的离散状态,这与三个板块活跃程度有关,武昌是教育中心,高校云集,洪山区是高新技术企业所在地,江夏与之毗邻,高技能人才对优质房源的刚需崔生了高房价,同时还迁房和房龄超过20年的老房需求疲软,导致了房价离散程度较高,从中线位置来看,武昌明显处于左偏状态,洪山区为右偏,江夏则居中,这说明武昌房价均值低估趋势,洪山则虚高,投资者可考虑选择武昌好地段房源,或选择江夏,洪山区需谨慎,如光谷金融港片区,2016-2018年连续两年增幅超过30%,投机过热,此时接盘短期来看比较危险,相较之选择江夏比较划算和保险。
7、武汉市房屋交易热度图