【資料處理】北京市租房案例實戰(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