深圳租房分析(2/2)数据分析

  • 1、数据处理分析准备
    • 1.1、导入数据
    • 1.2、处理重复值
    • 1.3、数据类型转换
  • 2、房源数量,位置分布分析
    • 2.1、各城区房源数量对比(横柱状图)
    • 2.2、各户型数量分析(横柱状图)
    • 2.3、各个城区平均租金(柱状图和折线图)
    • 2.4、面积区间分析(饼状图)
    • 2.5、朝向对于价格影响(柱状图和折线图)
  • 3、结语

数据来源链家租房网站。随机爬虫了5000多数据。删除了信息相同的一部分信息。余下的会从五个维度进行分析!

  • 01各个城区房源数量对比(横柱状图)
  • 02各种户型之间数量对比(横柱状图)(删除了部分数量太少的户型)
  • 03各个城区租金对比(柱状图和折线统计图)
  • 04面积区间分布图(饼状图)
  • 05房屋朝向不同的房屋价格对比(柱状图和折线统计图)
# 导包
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns

处理中文字符无法正常显示

from pylab import mpl
# 设置显示中文字体
mpl.rcParams["font.sans-serif"] = ["SimHei"]
# 设置正常显示符号
mpl.rcParams["axes.unicode_minus"] = False

1、数据处理分析准备

1.1、导入数据

data = pd.read_csv("./shenzhenlianjia.csv", encoding='gbk')
data
城区 小区 面积 房间格局 方向 价格
0 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 东南 1500
1 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 西北 1800
2 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 1800
3 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 东南 1800
4 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 东南 1800
... ... ... ... ... ... ...
4320 福田区 特区报社宿舍楼 14㎡ 5室1厅2卫 西 2390
4321 南山区 佳兆业前海广场一期 88㎡ 4室2厅1卫 东南 9500
4322 福田区 锦林新居 17㎡ 3室1厅1卫 2560
4323 福田区 众孚大厦 7㎡ 4室1厅2卫 东南 1790
4324 龙岗区 东方半岛花园A区 13㎡ 4室1厅2卫 西北 1660

4325 rows × 6 columns

1.2、处理重复值

# 检测重复数据,
data.duplicated()
data.shape
(4325, 6)
data = data.drop_duplicates()
data = data[data['城区'] != '城区']
data
城区 小区 面积 房间格局 方向 价格
0 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 东南 1500
1 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 西北 1800
2 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 1800
3 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 东南 1800
6 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 2000
... ... ... ... ... ... ...
4320 福田区 特区报社宿舍楼 14㎡ 5室1厅2卫 西 2390
4321 南山区 佳兆业前海广场一期 88㎡ 4室2厅1卫 东南 9500
4322 福田区 锦林新居 17㎡ 3室1厅1卫 2560
4323 福田区 众孚大厦 7㎡ 4室1厅2卫 东南 1790
4324 龙岗区 东方半岛花园A区 13㎡ 4室1厅2卫 西北 1660

2762 rows × 6 columns

data.shape
(2762, 6)

1.3、数据类型转换

# 把面积转化为数组int
data_area_new = np.array([])
data_area = data['面积'].values
data_area
data
城区 小区 面积 房间格局 方向 价格
0 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 东南 1500
1 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 西北 1800
2 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 1800
3 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 东南 1800
6 大鹏新区 承翰半山海 36㎡ 1室1厅1卫 2000
... ... ... ... ... ... ...
4320 福田区 特区报社宿舍楼 14㎡ 5室1厅2卫 西 2390
4321 南山区 佳兆业前海广场一期 88㎡ 4室2厅1卫 东南 9500
4322 福田区 锦林新居 17㎡ 3室1厅1卫 2560
4323 福田区 众孚大厦 7㎡ 4室1厅2卫 东南 1790
4324 龙岗区 东方半岛花园A区 13㎡ 4室1厅2卫 西北 1660

2762 rows × 6 columns

for i in data_area:data_area_new = np.append(data_area_new, np.array(i[:-1]))
data_area_new = data_area_new.astype(np.float64)
data.loc[:, '面积'] = data_area_new
dataprice = data['价格'].astype(np.float64)
data.loc[:, '价格'] = dataprice
data
城区 小区 面积 房间格局 方向 价格
0 大鹏新区 承翰半山海 36.0 1室1厅1卫 东南 1500.0
1 大鹏新区 承翰半山海 36.0 1室1厅1卫 西北 1800.0
2 大鹏新区 承翰半山海 36.0 1室1厅1卫 1800.0
3 大鹏新区 承翰半山海 36.0 1室1厅1卫 东南 1800.0
6 大鹏新区 承翰半山海 36.0 1室1厅1卫 2000.0
... ... ... ... ... ... ...
4320 福田区 特区报社宿舍楼 14.0 5室1厅2卫 西 2390.0
4321 南山区 佳兆业前海广场一期 88.0 4室2厅1卫 东南 9500.0
4322 福田区 锦林新居 17.0 3室1厅1卫 2560.0
4323 福田区 众孚大厦 7.0 4室1厅2卫 东南 1790.0
4324 龙岗区 东方半岛花园A区 13.0 4室1厅2卫 西北 1660.0

2762 rows × 6 columns

2、房源数量,位置分布分析

2.1、各城区房源数量对比(横柱状图)

# 一共有10个城区
num = data['城区'].nunique()
num
10
# 城区列表
area_df = pd.DataFrame({'城区': data['城区'].unique(), '数量': [0]*num})
area_df
城区 数量
0 大鹏新区 0
1 龙岗区 0
2 盐田区 0
3 南山区 0
4 坪山区 0
5 龙华区 0
6 宝安区 0
7 罗湖区 0
8 光明区 0
9 福田区 0
grouparea = data.groupby(by='城区').count()
grouparea
小区 面积 房间格局 方向 价格
城区
光明区 22 22 22 22 22
南山区 458 458 458 458 458
坪山区 50 50 50 50 50
大鹏新区 71 71 71 71 71
宝安区 288 288 288 288 288
盐田区 66 66 66 66 66
福田区 570 570 570 570 570
罗湖区 428 428 428 428 428
龙华区 245 245 245 245 245
龙岗区 564 564 564 564 564
area_df['数量'] = grouparea.values
area_df
城区 数量
0 大鹏新区 22
1 龙岗区 458
2 盐田区 50
3 南山区 71
4 坪山区 288
5 龙华区 66
6 宝安区 570
7 罗湖区 428
8 光明区 245
9 福田区 564
area_df.sort_values(by='数量', ascending=False)
城区 数量
6 宝安区 570
9 福田区 564
1 龙岗区 458
7 罗湖区 428
4 坪山区 288
8 光明区 245
3 南山区 71
5 龙华区 66
2 盐田区 50
0 大鹏新区 22
# 可视化展示
distance_type = area_df['城区']
num_type = area_df['数量']plt.figure(figsize=(20, 13), dpi=100)
plt.barh(range(10), num_type, height=0.7)
# 替换标签
plt.yticks(range(10), distance_type)# x坐标延长
plt.xlim(0, 600)
plt.xlabel('数量')
plt.ylabel('城区')
plt.title('深圳市各城区租房数量')# 显示数量
for x, y in enumerate(num_type):plt.text(y+0.5, x, '%s' % y)
plt.show()

2.2、各户型数量分析(横柱状图)

这里的户型太多了,有些户型太少,所以进行了取舍,舍弃户型数量小于的50的,只需要分析户型大于50的!

num = data['房间格局'].nunique()
num
52
room_df = pd.DataFrame({'房间格局': data['房间格局'].unique(), '数量': [0]*num})
room_df
房间格局 数量
0 1室1厅1卫 0
1 1室0厅1卫 0
2 2室2厅1卫 0
3 2室1厅1卫 0
4 3室2厅1卫 0
5 3室2厅2卫 0
6 4室2厅2卫 0
7 3室1厅3卫 0
8 3室1厅2卫 0
9 8室2厅5卫 0
10 5室2厅5卫 0
11 5室3厅5卫 0
12 3室1厅1卫 0
13 6室2厅4卫 0
14 6室2厅3卫 0
15 2室2厅2卫 0
16 3室2厅3卫 0
17 1室1厅2卫 0
18 4室2厅4卫 0
19 4室1厅1卫 0
20 4室1厅2卫 0
21 4室3厅4卫 0
22 5室1厅2卫 0
23 1室0厅0卫 0
24 3室0厅4卫 0
25 5室0厅1卫 0
26 5室1厅1卫 0
27 1室0厅2卫 0
28 5室0厅5卫 0
29 5室0厅4卫 0
30 1室1厅0卫 0
31 5室1厅3卫 0
32 2室1厅2卫 0
33 5室2厅4卫 0
34 1室2厅1卫 0
35 5室1厅4卫 0
36 5室0厅2卫 0
37 2室0厅1卫 0
38 4室0厅1卫 0
39 2室1厅0卫 0
40 4室1厅3卫 0
41 4室2厅1卫 0
42 5室1厅5卫 0
43 5室0厅3卫 0
44 未知室1厅1卫 0
45 未知室0厅0卫 0
46 5室2厅2卫 0
47 2室0厅2卫 0
48 6室1厅3卫 0
49 4室0厅4卫 0
50 2室2厅3卫 0
51 6室2厅2卫 0
grouproom = data.groupby(by='房间格局').count()
grouproom
城区 小区 面积 方向 价格
房间格局
1室0厅0卫 21 21 21 21 21
1室0厅1卫 453 453 453 453 453
1室0厅2卫 1 1 1 1 1
1室1厅0卫 6 6 6 6 6
1室1厅1卫 521 521 521 521 521
1室1厅2卫 2 2 2 2 2
1室2厅1卫 5 5 5 5 5
2室0厅1卫 6 6 6 6 6
2室0厅2卫 1 1 1 1 1
2室1厅0卫 1 1 1 1 1
2室1厅1卫 366 366 366 366 366
2室1厅2卫 5 5 5 5 5
2室2厅1卫 106 106 106 106 106
2室2厅2卫 13 13 13 13 13
2室2厅3卫 1 1 1 1 1
3室0厅4卫 1 1 1 1 1
3室1厅1卫 213 213 213 213 213
3室1厅2卫 58 58 58 58 58
3室1厅3卫 3 3 3 3 3
3室2厅1卫 109 109 109 109 109
3室2厅2卫 76 76 76 76 76
3室2厅3卫 1 1 1 1 1
4室0厅1卫 6 6 6 6 6
4室0厅4卫 1 1 1 1 1
4室1厅1卫 278 278 278 278 278
4室1厅2卫 196 196 196 196 196
4室1厅3卫 3 3 3 3 3
4室2厅1卫 5 5 5 5 5
4室2厅2卫 31 31 31 31 31
4室2厅4卫 3 3 3 3 3
4室3厅4卫 1 1 1 1 1
5室0厅1卫 8 8 8 8 8
5室0厅2卫 2 2 2 2 2
5室0厅3卫 3 3 3 3 3
5室0厅4卫 4 4 4 4 4
5室0厅5卫 18 18 18 18 18
5室1厅1卫 47 47 47 47 47
5室1厅2卫 156 156 156 156 156
5室1厅3卫 13 13 13 13 13
5室1厅4卫 2 2 2 2 2
5室1厅5卫 3 3 3 3 3
5室2厅2卫 2 2 2 2 2
5室2厅4卫 1 1 1 1 1
5室2厅5卫 2 2 2 2 2
5室3厅5卫 1 1 1 1 1
6室1厅3卫 1 1 1 1 1
6室2厅2卫 1 1 1 1 1
6室2厅3卫 1 1 1 1 1
6室2厅4卫 1 1 1 1 1
8室2厅5卫 1 1 1 1 1
未知室0厅0卫 1 1 1 1 1
未知室1厅1卫 1 1 1 1 1
room_df['数量'] = grouproom.values
room_df
房间格局 数量
0 1室1厅1卫 21
1 1室0厅1卫 453
2 2室2厅1卫 1
3 2室1厅1卫 6
4 3室2厅1卫 521
5 3室2厅2卫 2
6 4室2厅2卫 5
7 3室1厅3卫 6
8 3室1厅2卫 1
9 8室2厅5卫 1
10 5室2厅5卫 366
11 5室3厅5卫 5
12 3室1厅1卫 106
13 6室2厅4卫 13
14 6室2厅3卫 1
15 2室2厅2卫 1
16 3室2厅3卫 213
17 1室1厅2卫 58
18 4室2厅4卫 3
19 4室1厅1卫 109
20 4室1厅2卫 76
21 4室3厅4卫 1
22 5室1厅2卫 6
23 1室0厅0卫 1
24 3室0厅4卫 278
25 5室0厅1卫 196
26 5室1厅1卫 3
27 1室0厅2卫 5
28 5室0厅5卫 31
29 5室0厅4卫 3
30 1室1厅0卫 1
31 5室1厅3卫 8
32 2室1厅2卫 2
33 5室2厅4卫 3
34 1室2厅1卫 4
35 5室1厅4卫 18
36 5室0厅2卫 47
37 2室0厅1卫 156
38 4室0厅1卫 13
39 2室1厅0卫 2
40 4室1厅3卫 3
41 4室2厅1卫 2
42 5室1厅5卫 1
43 5室0厅3卫 2
44 未知室1厅1卫 1
45 未知室0厅0卫 1
46 5室2厅2卫 1
47 2室0厅2卫 1
48 6室1厅3卫 1
49 4室0厅4卫 1
50 2室2厅3卫 1
51 6室2厅2卫 1
room_df = room_df[room_df['数量'] > 50]
room_df
房间格局 数量
1 1室0厅1卫 453
4 3室2厅1卫 521
10 5室2厅5卫 366
12 3室1厅1卫 106
16 3室2厅3卫 213
17 1室1厅2卫 58
19 4室1厅1卫 109
20 4室1厅2卫 76
24 3室0厅4卫 278
25 5室0厅1卫 196
37 2室0厅1卫 156
num = room_df.shape[0]
num
11
house_type = room_df['房间格局']
num_type = room_df['数量']# 绘图
plt.figure(figsize=(20, 13), dpi=100)
plt.barh(range(num), num_type, height=0.7)
# 替换标签
plt.yticks(range(num), house_type)# 延长x轴
plt.xlim(0, 550)plt.xlabel('数量')
plt.ylabel('房间类型')
plt.title('深圳市租房主要户型')
for x, y in enumerate(num_type):plt.text(y, x, '%s' % y)plt.show()

2.3、各个城区平均租金(柱状图和折线图)

mean_df = pd.DataFrame({'城区': data['城区'].unique(), '房租总金额': [0]*10, '总面积': [0]*10})
mean_df
城区 房租总金额 总面积
0 大鹏新区 0 0
1 龙岗区 0 0
2 盐田区 0 0
3 南山区 0 0
4 坪山区 0 0
5 龙华区 0 0
6 宝安区 0 0
7 罗湖区 0 0
8 光明区 0 0
9 福田区 0 0
# 总价格
sum_price = data['价格'].groupby(data['城区']).sum()
sum_price
城区
光明区       87100.0
南山区     1786082.0
坪山区      135056.0
大鹏新区     318690.0
宝安区      992655.0
盐田区      222521.0
福田区     1812617.0
罗湖区     1320652.0
龙华区      731725.0
龙岗区     1510020.0
Name: 价格, dtype: float64
# 总面积
sum_area = data['面积'].groupby(data['城区']).sum()
sum_area
城区
光明区      1821.0
南山区     13555.0
坪山区      3422.0
大鹏新区     5664.0
宝安区     14348.0
盐田区      4017.0
福田区     15982.0
罗湖区     14374.0
龙华区     11286.0
龙岗区     28506.0
Name: 面积, dtype: float64
mean_df['总面积'] = sum_area.values
mean_df['房租总金额'] = sum_price.values
mean_df
城区 房租总金额 总面积
0 大鹏新区 87100.0 1821.0
1 龙岗区 1786082.0 13555.0
2 盐田区 135056.0 3422.0
3 南山区 318690.0 5664.0
4 坪山区 992655.0 14348.0
5 龙华区 222521.0 4017.0
6 宝安区 1812617.0 15982.0
7 罗湖区 1320652.0 14374.0
8 光明区 731725.0 11286.0
9 福田区 1510020.0 28506.0
mean_df['每平米租金(元)'] = round(mean_df['房租总金额']/mean_df['总面积'], 2)
mean_df
城区 房租总金额 总面积 每平米租金(元)
0 大鹏新区 87100.0 1821.0 47.83
1 龙岗区 1786082.0 13555.0 131.77
2 盐田区 135056.0 3422.0 39.47
3 南山区 318690.0 5664.0 56.27
4 坪山区 992655.0 14348.0 69.18
5 龙华区 222521.0 4017.0 55.39
6 宝安区 1812617.0 15982.0 113.42
7 罗湖区 1320652.0 14374.0 91.88
8 光明区 731725.0 11286.0 64.83
9 福田区 1510020.0 28506.0 52.97
# 合并城区数量表
df_merge = pd.merge(area_df, mean_df)
df_merge
城区 数量 房租总金额 总面积 每平米租金(元)
0 大鹏新区 22 87100.0 1821.0 47.83
1 龙岗区 458 1786082.0 13555.0 131.77
2 盐田区 50 135056.0 3422.0 39.47
3 南山区 71 318690.0 5664.0 56.27
4 坪山区 288 992655.0 14348.0 69.18
5 龙华区 66 222521.0 4017.0 55.39
6 宝安区 570 1812617.0 15982.0 113.42
7 罗湖区 428 1320652.0 14374.0 91.88
8 光明区 245 731725.0 11286.0 64.83
9 福田区 564 1510020.0 28506.0 52.97
# 可视化
num = df_merge['数量']
price = df_merge['每平米租金(元)']
l = [i for i in range(10)]
lx = df_merge['城区']fig = plt.figure(figsize=(15, 10), dpi=100)# 显示折线图
ax1 = fig.add_subplot(111)
ax1.plot(l, price, 'or-', label='价格')
for i, (_x, _y) in enumerate(zip(l, price)):plt.text(_x+0.1, _y, price[i])
ax1.set_ylim([0, 160])
ax1.set_ylabel('价格/平米')
plt.legend(loc='upper left')# 绘制条形图
ax2 = ax1.twinx()
plt.bar(l, num, alpha=0.3, color='green', label='数量')
ax2.set_ylabel('数量')
plt.legend(loc='upper right')
plt.xticks(l, lx)
# for x,y in enumerate(num):
#     plt.text(y,x,'%2f'%y)plt.title('深圳市各区租房数量与价格')
plt.show()

2.4、面积区间分析(饼状图)

# 查看房屋最贵,最便宜
print('房屋最贵是{}元每月'.format(data['价格'].max()))
print('房屋最便宜是{}元每月'.format(data['价格'].min()))
房屋最贵是180000.0元每月
房屋最便宜是950.0元每月
# 查看房屋的最大面积和最小面积
print('房屋最大面积是{}平方米'.format(data['面积'].max()))
print('房屋最小面积是{}平方米'.format(data['面积'].min()))
房屋最大面积是830.0平方米
房屋最小面积是5.0平方米
# 面积区间划分
area_divide = [0, 8, 15, 25, 40, 55, 70, 90, 120, 850]
area_cut = pd.cut(list(data['面积']), area_divide)
area_cut_data = area_cut.describe()
area_cut_data
counts freqs
categories
(0, 8] 312 0.112962
(8, 15] 505 0.182839
(15, 25] 207 0.074946
(25, 40] 583 0.211079
(40, 55] 418 0.151340
(55, 70] 227 0.082187
(70, 90] 382 0.138306
(90, 120] 95 0.034395
(120, 850] 33 0.011948
# 数据可视化,使用饼状图
area_percentage = (area_cut_data['freqs'].values)*100
area_percentage
array([11.2961622 , 18.28385228,  7.49456915, 21.10789283, 15.1339609 ,8.21868211, 13.83055757,  3.43953657,  1.19478639])
labels = ['8平米以下', '8-15平米', '15-25平米', '25-40平米', '40-55平米', '55-70平米', '70-90平米','90-120平米', '120平米以上']
plt.figure(figsize=(20, 10), dpi=100)
# 显示的是圆形,如果不加,是椭圆形
plt.axes(aspect=1)
plt.pie(x=area_percentage, labels=labels, autopct='%.2f %%', shadow=True)
plt.legend(loc='best')
plt.title('深圳市租房面积区间统计图')
plt.show
<function matplotlib.pyplot.show(*args, **kw)>

2.5、朝向对于价格影响(柱状图和折线图)

face_df_value = data['方向'].unique()
face_df_value
array(['东南', '西北', '南', '西', '西南', '东', '北', '东北'], dtype=object)
face_df = pd.DataFrame({'方向': data['方向'].unique(), '数量': [0]*face_df_value.shape[0], '总价格': [0]*face_df_value.shape[0], '总面积': [0]*face_df_value.shape[0]})
face_df
方向 数量 总价格 总面积
0 东南 0 0 0
1 西北 0 0 0
2 0 0 0
3 西 0 0 0
4 西南 0 0 0
5 0 0 0
6 0 0 0
7 东北 0 0 0
num_sum = data.groupby(by=data['方向']).count()
num_sum
城区 小区 面积 房间格局 价格
方向
266 266 266 266 266
东北 83 83 83 83 83
东南 590 590 590 590 590
406 406 406 406 406
1010 1010 1010 1010 1010
西 139 139 139 139 139
西北 108 108 108 108 108
西南 160 160 160 160 160
# 总价格
price_sum = data['价格'].groupby(by=data['方向']).sum()
price_sum
方向
东      846353.0
东北     259858.0
东南    2281168.0
北     1149286.0
南     3158155.0
西      388531.0
西北     332181.0
西南     501586.0
Name: 价格, dtype: float64
# 总面积
area_sum = data['面积'].groupby(by=data['方向']).sum()
area_sum
方向
东      9311.0
东北     3275.0
东南    32360.0
北     10820.0
南     42690.0
西      3198.0
西北     3706.0
西南     7615.0
Name: 面积, dtype: float64
# 赋值写入
face_df['数量'] = num_sum.values
face_df['总价格'] = price_sum.values
face_df['总面积'] = area_sum.values
face_df
方向 数量 总价格 总面积
0 东南 266 846353.0 9311.0
1 西北 83 259858.0 3275.0
2 590 2281168.0 32360.0
3 西 406 1149286.0 10820.0
4 西南 1010 3158155.0 42690.0
5 139 388531.0 3198.0
6 108 332181.0 3706.0
7 东北 160 501586.0 7615.0
# 平均价格
face_df['平均价格'] = round(face_df['总价格']/face_df['总面积'], 2)
face_df
方向 数量 总价格 总面积 平均价格
0 东南 266 846353.0 9311.0 90.90
1 西北 83 259858.0 3275.0 79.35
2 590 2281168.0 32360.0 70.49
3 西 406 1149286.0 10820.0 106.22
4 西南 1010 3158155.0 42690.0 73.98
5 139 388531.0 3198.0 121.49
6 108 332181.0 3706.0 89.63
7 东北 160 501586.0 7615.0 65.87
# 准备数据
l = [i for i in range(8)]
_num = face_df['数量']
# _sumprice = face_df['总价格']
# _sumarea = face_df['总面积']
_meanprice = face_df['平均价格']fig = plt.figure(figsize=(20, 8), dpi=100)# 绘制数量柱状图
ax3 = fig.add_subplot(111)
ax3.bar(l, _num, label='数量', alpha=0.5, color='green')
ax3.set_ylabel('数量')
ax3.set_ylim(0, 1200)
plt.legend(loc='upper left')
for x, y in enumerate(_num):plt.text(x-0.1, y+18, '%s' % y)
# 替换x标签
plt.xticks(l, face_df['方向'])# 绘制折线图
ax4 = ax3.twinx()
plt.plot(l, _meanprice, 'or-', label='价格')
ax4.legend(loc='upper right')
ax4.set_ylim(0, 150)
ax4.set_ylabel('价格')
for i, (_x, _y) in enumerate(zip(l, _meanprice)):plt.text(_x+0.1, _y-0.1, _meanprice[i])plt.title('深圳租房朝向对价格影响')
plt.show()

3、结语

主要来深圳一段时间,租房的问题是一个大问题,就自己爬取了一些信息,然后就进行了一部分分析。采取的样本并不是特别多。以上只是个人的数据分析与其他无关!
关注技术,学习进步!

链家租房-深圳租房分析(2/2)数据分析相关推荐

  1. 链家网北京市租房数据分析(二)——基于python的数据可视化

    本次分析的数据为爬取链家网租房首页的3000余条整租房源数据.数据量较小,分析结果难免存在偏差,本分析报告仅作为实战项目展示.本报告中所描述的平均租金指单套房源租金的中位数. 数据源可至百度网盘提取, ...

  2. ER图连接线上加个圆圈什么意思_如何拿链家网的租房数据做些有意思的事情?...

    周末周六两天,做了链家网的爬虫,可能有很多朋友做过,当然很多人只是练爬虫,但没有对爬取数据进行一些可视化去发现一些比较有意思的东西,今天想要通过抓取的数据进行一些比较有趣的统计分析. 如果你想要这份数 ...

  3. python 爬取链家网北京租房信息

    刚学习了python,中途遇到很多问题,查了很多资料,最关键的就是要善于调试,div信息一定不要找错,下面就是我爬取租房信息的代码和运行结果: 链家的房租网站 两个导入的包 1.requests 用来 ...

  4. 链家网北京市租房数据分析(一)——基于python的数据清洗

    作为北漂中的一员,我们都明白,租房是不能回避的问题.租房被坑,也是难以避免的.多数人都有那么一段不堪回首的与黑中介面对面的往事.其实,就是贪图便宜. 便宜可以占,但是我们要理性地占便宜.要有全局观.大 ...

  5. 链家网杭州租房信息数据爬取+数据分析

    参考https://mp.weixin.qq.com/s/vvZ2yBb2eMKP800LUPoAWg 需求分析¶ 过去一个月,全国热点城市的房租如脱缰野马.一线的房租同比涨了近20%.一夜醒来,无产 ...

  6. 利用神经网络预测链家网上海租房价格(Python)

    代码详见:Predict-house-rent-with-neutral-network 简介 本项目利用Python的scrapy框架爬取链家网的上海市租房信息,利用pandas.numpy.mat ...

  7. 爬取链家-滨江的租房数据

    最近学以致用,使用python3的requests package 爬取 链家-滨江 在爬取过程中基本没有遇到什么坑,可能链家的反爬机制就没有吧 主要流程分成 两步: 第一步是 获取当前页面的内容 第 ...

  8. python建筑案例_Python数据分析实战-链家北京二手房价分析

    前言 最近在自学Python,通过学习大家的分享案例,看到使用Python进行较多的主要4个方面:爬虫,数据处理,数据可视化以及机器学习建模.对我来说目标就是: 熟练使用numpy pandas 进行 ...

  9. python爬虫requests源码链家_python数据分析实例:python抓取链家二手房源数据和分析...

    python语言,在数据分析方面,涵盖了"数据获取→数据处理→数据分析→数据可视化"这个流程中每个环节,不可不谓之为利器. 本篇文章我们就利用python语言在数据分析方面的应用, ...

  10. python爬取链家网实例——scrapy框架爬取-链家网的租房信息

    说明: 本文适合scrapy框架的入门学习. 一.认识scrapy框架 开发python爬虫有很多种方式,从程序的复杂程度的角度来说,可以分为:爬虫项目和爬虫文件. scrapy更适合做爬虫项目,ur ...

最新文章

  1. Python元组字典
  2. 2017计算机基础教学大纲,2017级大学计算机基础教学大纲设计.doc
  3. .NET Core加解密实战系列之——消息摘要与数字签名算法
  4. 7-218 修理牧场 (25 分)
  5. Asp.Net数据控件遍历
  6. C++ 头文件包含顺序
  7. 电脑功耗监测_VOCS在线监测系统
  8. 百度网站诚信认证现在是个什么情况呢?
  9. idea 导出项目到eclipse
  10. python pandas按照行数切分文件
  11. 文件夹加密狗的加密原理与解密
  12. 某网站提供的免费香港虚拟主机测试
  13. 专访金榕:四年蜕变,阿里iDST是如何登上浪潮之巅的?
  14. Dolphinscheduler发邮件
  15. Java es should_@Es问题--should和must同时使用
  16. 史玉柱论民营企业的“13种死法”
  17. 关于飞机材料阻燃测试标准ABD 0031
  18. Python大作业之就诊卡管理信息系统[原创]
  19. 每日三个笑话-20151003
  20. [附源码]计算机毕业设计springboot驾校预约管理系统

热门文章

  1. solr使用 备忘录 草稿
  2. TypeScript 使用 infer 实现类型推断
  3. 二级域名指向同一ip的不同端口
  4. 创建动态的XML数据
  5. swift 函数类型+高阶函数
  6. C++ printf打印二进制,三进制,八进制,十六进制等
  7. ERP软件高效排产计划:如何解决企业排产难题
  8. 【Web】HTML中选择器的基本用法
  9. Golang 企业级web后端框架
  10. VUE发送POST请求自动附带本地地址