【数据处理】北京市租房案例实战(1)

语言: CN / TW / HK

highlight: a11y-dark

我报名参加金石计划1期挑战——瓜分10万奖池,这是我的第6篇文章,点击查看活动详情

1. 引言

我们将对numpy,pandas,matplotlib,seaborn库进行综合运用,旨在熟练掌握这些基本工具。

1.1 项目需求:

  1. 统计每个区域的房源总数量,并使用热力图对房源位置的分布情况进行分析
  2. 使用条形统计图分析哪种户型的数量最多、更受欢迎
  3. 统计每个区域的平均租金,并结合柱状图和折线图分析各区域的房源数量和租金情况
  4. 统计面积区域的市场占有率,并使用饼图绘制个区间所占比例

1.2 数据集介绍:

  • 数据集是有关于租房信息的公开数据。
  • 具体特征包括所属区域、小区名称、房屋、价格、房屋面积、户型等等。

2. 代码演示

2.1 导入模块

首先,需要导入所需的模块:

python import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns

2.2 数据集处理

我们先使用pandas读取csv数据文件: python file_name = pd.read_csv("链家北京租房数据.csv") file_name 读取结果如下图所示:

image.png

查看数据集基本属性和信息:

  1. file_name.shape:获取基本属性

  2. file_name.info():查看数据中每个字段基本信息

运行结果如下图所示:

image.png

  1. file_name.describe():获取基本统计学数据描述

运行结果如下图所示:只能计算价格这一列的最大值最小值等统计学描述,其余列是object属性,不会去计算。

image.png

2.3 数据基本处理

虽然数据集已经有了,但是数据集中可能还存在一定的问题,不能直接用来数据分析。这就需要我们进行数据预处理,比如:处理缺失值,处理重复值,统一数据类型等等。

2.3.1 重复值检测

```python

重复值检测

file_name.duplicated().any() ``` 运行结果如下图所示:

image.png

2.3.2 删除重复值

```python

删除重复值

file_data = file_name.drop_duplicates() file_data.shape

s数据量变少了,说明重复值已经被删去了

``` 运行结果如下图所示:可以发现数据由8223条样本减少到5773条样本,说明删除了一些重复值。

image.png

2.3.3 空值处理

  • isnull():判断是否存在空值,若没有空值返回false
  • dropna():删除空值 ```python

空值处理

file_data = file_data.dropna() file_data.isnull().any() ``` 运行结果如下图所示:

image.png