贝壳房价数据分析
目录
项目内容
项目目的
房源数据爬取
数据清洗
数据分析+可视化
项目内容
本案案例选择贝壳网宁波地区的二手房房源信息进行分析
![](https://img-blog.csdnimg.cn/2020031416160973.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_70)
项目目的
1.宁波各区二手房数量与每平米房价分布情况
2.房屋结构概况
3.分析各因素对房价的影响(地区、户型、朝向、装修)
4.统计出现在标题中出现次数最多的词是什么
房源数据爬取
爬取到的数据
![](https://img-blog.csdnimg.cn/20200314162157428.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_70)
数据清洗
1.删除缺失值
使用筛选,筛选出户型结构的空白值
全部选中删除行
![](https://img-blog.csdnimg.cn/20200306164123943.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_70)
然后点击列就可知道每列有多少的数值
![](https://img-blog.csdnimg.cn/20200306164301954.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_70)
2.将楼层中的数字提取出来
=MID(E2,FIND("共",E2)+1,FIND("层",E2,FIND("共",E2))-FIND("共",E2)-1)
[/code]
用此Excel公式将楼层数字提取取出以便后期分析,再将原列隐藏起来。
![](https://img-blog.csdnimg.cn/20200314162900849.png)
3.提取平均每平方米房价数据
clean函数用于删除不能打印的换行符
```code
=CLEAN(LEFT(I2,FIND("元",I2)-1))
[/code]
![](https://img-blog.csdnimg.cn/20200306151144711.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_70)
不过要注意的是unitprice_num这一列还不是数值格式,在Excel中靠右的才算数值格式。
转换成数值格式过程:
(1)在其后面插入一列,然后复制该列,以值的格式粘贴到后面。
![](https://img-blog.csdnimg.cn/20200306162458803.png)
(2)选中该列,数据→分列→以“,”分隔
![](https://img-blog.csdnimg.cn/20200306162626934.png)
这样便得到了靠右的数据
![](https://img-blog.csdnimg.cn/20200306162719140.png)
4.将房屋面积替换为可清洗的数值
![](https://img-blog.csdnimg.cn/20200306172049515.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_0)
### 数据分析+可视化
**1、宁波各区二手房数量与每平米房价分布情况**
(1)各地区二手房数量分布
![](https://img-blog.csdnimg.cn/2020031419524791.png)
从数量统计上来看,目前二手房市场上比较火热的区域。鄞州区、北仑区和海曙区的二手房数量最多,基本都在2500套以上,毕竟是在人口比较集中的地区,需求也大。
(2)宁波地区每平米房价分布情况
![](https://img-blog.csdnimg.cn/20200314230829869.png)
由上图可以看出,宁波地区的房单价大部分分布在1w-3w之间,宁波作为新一线城市房价增长的速度也越来越快。
**2、房屋结构概况**
(1)户型结构的分布
![](https://img-blog.csdnimg.cn/20200314164310549.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_0)
我们发现只要少数几种户型的数量比较多,其余户型的数量基本是个位数。所以,在这里我们将房子套数小于50的户型归为一类,命名为其他户型。
![](https://img-blog.csdnimg.cn/2020031421130327.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_00)
宁波地区租房中房源最多的户型是3室2厅型
(2)朝向分布
![](https://img-blog.csdnimg.cn/20200314215459340.png)
朝南房子最多,这样符合大部分国内房子的朝向。
(3)房屋装修情况
![](https://img-blog.csdnimg.cn/20200314220415239.png)
可以看到二手房当中,大部分都是已经精装过的,说明大部分都是有居住过再转手。
**3、各因素对房价的影响**
(1)宁波地区二手房总价浮动情况
![](https://img-blog.csdnimg.cn/20200314200657954.png)
可以看到宁波地区二手房,由于有相当一部分的异常值,导致整体分布不均匀,无法观察到总体。
![](https://img-blog.csdnimg.cn/20200317103449620.png)
从房屋总价数据里面可以发现,平均的房价为230W,而这里最高的房价竟然达到了3100W,所以房屋总价数据中存在异常数据,这里处理的方法是将超过平均值3倍标准差的异常数据进行剔除,平均值为230,标准差为164,剔除房屋总价大于722的数据。
![](https://img-blog.csdnimg.cn/20200317104533983.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_0)
从上可以看出鄞州区和江北区的房价浮动情况最大,有75%都在180W以上。而宁海县地区的房产浮动则最小,大部分在75w-200w之间。
(2)各地区平均房价对比
![](https://img-blog.csdnimg.cn/20200315184719424.png)
宁波地区房价最贵的为鄞州区,大约2.6万/平。其次是江北区2.4万/平,海曙区2.2万/平,然后是镇海区2万/平,其他均第一2万/平。
房屋总价和单价具有相关性,一般房总价越高,每平方米的价格也就越高。
宁海县每平方米的价格比象山县要高,而它的平均总价却比象山县的要低。这是因为宁海县的房源信息只有5套,相比其他几个地区统计量要少,没有太多异常值的原因。
(3)装修程度与价格对比
![](https://img-blog.csdnimg.cn/20200315192401361.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_0)
对于装修程度与价格的箱型图来看,精装修的价格最高,其次是毛坯房。
(4)房屋朝向与价格的关系
![](https://img-blog.csdnimg.cn/20200315194544285.png)
从上图可以发现只要朝向偏南或有朝南的,价格都会偏高,都在2W/米
**4、统计出现在标题中出现次数最多的词是什么**
卖家为了能尽快的收储房子一定会为自己的房子量身定做吸引人眼球的广告词,而这些广告词则能很好反映对于一套房子而言具备什么因素才能称得上一个“笋盘”。户型方正,精装修,交通便利。拎包入住都是一套吸引人的房子所具备的特点。
词云图
![](https://img-blog.csdnimg.cn/20200316143121133.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0dhbGF4eV9fNDI=,size_16,color_FFFFFF,t_70)
代码
```code
import jieba
import matplotlib.pyplot as plt
from scipy.misc import imread
from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator
import numpy as np
from PIL import Image
text_from_file=open('title.txt', 'r', encoding='utf-8').read()
Word_spilt_jieba = jieba.cut(text_from_file, cut_all=False)
word_space = ' '.join(Word_spilt_jieba)
#print(word_space)
# 图片背景模板
image=np.array(Image.open('timg.jpg'))
my_wordcloud = WordCloud(
scale=4,
# 设置背景颜色
background_color="white",
# 设置最大显示的词云数
max_words=100,
# 这种字体都在电脑字体中,一般路径
font_path='C:\Windows\Fonts\simfang.ttf',
mask=image,
# 设置字体最大值
max_font_size=100,
# 设置有多少种随机生成状态,即有多少种配色方案
).generate(word_space)
plt.imshow(my_wordcloud)
plt.axis('off')
plt.show()
my_wordcloud.to_file('res.jpg')