链家网北京市租房数据分析(一)——基于python的数据清洗
作为北漂中的一员,我们都明白,租房是不能回避的问题。租房被坑,也是难以避免的。多数人都有那么一段不堪回首的与黑中介面对面的往事。其实,就是贪图便宜。
便宜可以占,但是我们要理性地占便宜。要有全局观、大局观。
所以,爬取链家网的租房数据,一起来看一看,有哪些性价比高的房子。让我们用科学的手段来选择房子,拒绝黑中介,拒绝撞大运和异想天开。
数据源可至百度网盘提取,永久有效。
链接:https://pan.baidu.com/s/1EqfsnGlb63HeUlKlQfGEgg
提取码:i20b
本项目分为两部分,数据清洗、可视化探索。本文为第一部分,第二部分可前往查看。
链家网北京市租房数据python实战——可视化探索
以下是数据清洗的正文内容,大部分图是jupyter截图或导出图片。
1. 导入数据
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
plt.style.use('ggplot') data = pd.read_csv('data_lianjia.csv', encoding='gbk', index_col=False)
data.head()
# 默认语言'gbk',另外要设置inex_col = False 默认原数据无行索引,不然会导致URL默认为行索引。
# 补充:header = False, 默认原数据无列索引。
2. 数据概览
了解一下数据的基本情况。共有3330条数据。
经纪人有33条缺失,其他字段无缺失。 对于经纪人的缺失,我们不做处理。
data.info()
3. 移除重复值
data.duplicated().sum() # 本语句可以看到项目有396条重复值
data = data.drop_duplicates() # 移除重复数据
4. 数据规整
对于各字段做针对性处理。
# 更改部分字段列名,方便记忆
data.rename(columns={'房屋类型厅室': '户型', '房屋类型精装修': '装修'}, inplace=True)
字段拆分
# 区域,拆分为行政区、商圈、小区
data['行政区'] = data['区域'].apply(lambda x: x.split(' ')[0])
data['商圈'] = data['区域'].apply(lambda x: x.split(' ')[1])
data['小区'] = data['区域'].apply(lambda x: x.split(' ')[2])# 户型
data['户型'] =data['户型'].str.replace('房间', '室')
data['户型'] = data['户型'].replace(['1室1卫', '2室1卫', '3室1卫', '1室0卫', '2室2卫', '3室2卫', '1室2卫', '5室2卫', '4室2卫'],['1室0厅1卫', '2室0厅1卫', '3室0厅1卫', '1室0厅0卫', '2室0厅2卫', '3室0厅2卫', '1室0厅2卫', '5室0厅2卫', '4室0厅2卫'])# 面积,房屋类型面积去掉单位,保留数字
data['面积'] = data['房屋类型面积'].str[:-1] # 面积拆分# 装修
data['装修'] = data['装修'].str.replace('精装修', '精装')
data['装修'] = data['装修'].str.replace('#', '简装')# 楼层,拆分为楼层位置、总楼层
data['楼层位置'] = data['楼层'].apply(lambda x: x.split('/')[0]) # 楼层拆分
data['总楼层'] = data['楼层'].apply(lambda x: x.split('/')[1]).str[:-1]
转换格式
把部分字段的格式转换为 float 格式,楼层转换为 int 整数格式。并计算单价。
col = ['面积','租金', '押金', '服务费', '中介费']
data[col] = data[col].astype(float)
data['总楼层'] = data['总楼层'].astype(int)data['单价'] = data['租金']/data['面积']
查看数据情况。
data.describe()
5. 导出数据
选择需要的字段(列)组成新的数据源,并重设索引
data_cleaned = data[['房源编号', '行政区', '商圈', '小区', '户型', '面积', '租金', '单价','装修', '朝向', '楼层位置', '总楼层', '电梯', '车位','用水', '用电', '燃气', '采暖', '经纪人']]
data_cleaned = data_cleaned.reset_index(drop=True) # 重设索引
data_cleaned.to_csv('data_cleaned.csv') # 导出清洗后的数据到新的csv
链家网爬取的数据是比较干净的,只需要做一些基础的处理即可。
下一部分我们开始可视化探索。
链家网北京市租房数据分析(一)——基于python的数据清洗相关推荐
- 链家网北京市租房数据分析(二)——基于python的数据可视化
本次分析的数据为爬取链家网租房首页的3000余条整租房源数据.数据量较小,分析结果难免存在偏差,本分析报告仅作为实战项目展示.本报告中所描述的平均租金指单套房源租金的中位数. 数据源可至百度网盘提取, ...
- python 爬取链家网北京租房信息
刚学习了python,中途遇到很多问题,查了很多资料,最关键的就是要善于调试,div信息一定不要找错,下面就是我爬取租房信息的代码和运行结果: 链家的房租网站 两个导入的包 1.requests 用来 ...
- ER图连接线上加个圆圈什么意思_如何拿链家网的租房数据做些有意思的事情?...
周末周六两天,做了链家网的爬虫,可能有很多朋友做过,当然很多人只是练爬虫,但没有对爬取数据进行一些可视化去发现一些比较有意思的东西,今天想要通过抓取的数据进行一些比较有趣的统计分析. 如果你想要这份数 ...
- 利用神经网络预测链家网上海租房价格(Python)
代码详见:Predict-house-rent-with-neutral-network 简介 本项目利用Python的scrapy框架爬取链家网的上海市租房信息,利用pandas.numpy.mat ...
- 链家网杭州租房信息数据爬取+数据分析
参考https://mp.weixin.qq.com/s/vvZ2yBb2eMKP800LUPoAWg 需求分析¶ 过去一个月,全国热点城市的房租如脱缰野马.一线的房租同比涨了近20%.一夜醒来,无产 ...
- python爬取链家租房信息_Python爬取链家网上海市租房信息
使用Python进行上海市租房信息爬取,通过requests + Beautifulsoup对网页内容进行抓取和数据提取. import requests from bs4 import Beauti ...
- python爬取链家网实例——scrapy框架爬取-链家网的租房信息
说明: 本文适合scrapy框架的入门学习. 一.认识scrapy框架 开发python爬虫有很多种方式,从程序的复杂程度的角度来说,可以分为:爬虫项目和爬虫文件. scrapy更适合做爬虫项目,ur ...
- 链家网沈阳二手房数据分析——从数据爬取到数据分析
数据爬取主要是通过使用requests实现的,鉴于爬取数据的流程简单以及电脑的性能所限,没有使用scrapy框架,而是使用where循环手动控制页码的形式,每次爬取5页信息,并将信息写入.csv文件中 ...
- python爬房源信息_Python爬链家网租房信息
爬去链家网的租房信息然后存储到数据库中. #-*- coding:utf-8 -*- import requests import re import random import MySQLdb fr ...
最新文章
- numpy 打乱 numpy 数组
- 海量日志数据分析与应用》场景介绍及技术点分析
- JMS学习(五)--ActiveMQ中的消息的持久化和非持久化 以及 持久订阅者 和 非持久订阅者之间的区别与联系...
- 安卓上为什么不能用system.io.file读取streammingAssets目录下的文件
- js实现线路流动_52期:实现redux与reactredux
- spring cloud集成Eureka
- oracle创建表空间、用户
- session 拦截器中获取不到session值_拦截器实现登陆验证
- 安装Apache服务器
- 阿里巴巴实习 面试题
- 数据挖掘导论课后习题答案-第七章
- hdu4939思维DP
- MTK芯片处理器对比资料图
- 包机制、访问修饰符、Jar包 java初学 面向对象五
- C#项目绩效考核实战提升(一)
- VB中do循环的四种格式
- ERD Online 4.0.7 在线数据库建模、元数据管理(免费、私有部署)
- 用html制作百度地图,canvas实现百度地图个性化底图绘制
- csr867x入门之串口数据收发(二)
- Kafka生产环境缩容遇到的一个坑