小项目-数据处理篇:真·租房信息整理,应用dash整合到地图上

本文介绍了一次数据处理项目,通过爬虫获取租房信息,去除重复项后得到7万多条真实数据。利用Python的Dash库,创建交互式地图,展示不同装修状况的房源分布,并提供下拉选项查看区域小区情况。最后,筛选出符合条件的房源数据,整合到地图上进行可视化。后续章节将基于这些数据进行机器学习实验。
摘要由CSDN通过智能技术生成

接上一章内容:
经过了一下午的爬取,也算是终于搞到一份还算像样的数据:
这里写图片描述
经过去重还有8w3,可以玩耍了,重复原因有可能是因为,很多房源本身就发了很多回,就这8w3的数据应该也有重复,我们把title删除,再drop_duplicates一下:
这里写图片描述
还有7w多,这样的数据就比较真实了,数据到手,搞起:

df["rent"] = df["rent"].apply(lambda x: x[:-3]).astype("float32").astype("int32")
df["floor_area"] = df["floor_area"].astype("int32")
df["floor"] = df["floor"].apply(lambda x: x[:2])
df.head()

获取面积和租金:

这里写图片描述

新建一个参数,mean_rent 每平方米的租金:

df["mean_rent"] = (df["rent"]/df["floor_area"]).astype("int32")
df.sort_values("mean_rent")

获取mean_rent range 为(20,200):

df2 = df[df.mean_rent>20]
df2 = df2[df2.mean_rent<200]
df2.head()

然后在去掉大于400平米的房源:

df2 = df2[df2.floor_area < 400]

再对装修情况进行处理:

def change_decoration(x):
    if x==" ":
        x="暂无资料"
    elif x == "中等装修":
        x = "中装修"
    elif x=="简单装修":
        x = "简装修"
    else:
        pass
    return x
df2["decoration"] = df2["decoration"].apply(change_decoration)
df2.head()

获取不同装修情况的房源数量看一下:

decoration = df2.groupby("decoration").count().iloc[1:,[0]].rename(columns={
   "area":"number"}).reset_index()
import plotly
import plotly.plotly as py
import plotly.graph_objs as go
import plotly.figure_factory as ff
figure = ff.create_table(decoration, height_constant=60)
trace1 = go.Bar(
    x=decoration.decoration,
    y=decoration.number,
    text=decoration.number,
    textposition = 'auto',
    xaxis='x2', 
    yaxis='y2',
    marker=dict(
        color='rgba(132, 112, 255 ,0.5)',
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值