【資料處理】北京市租房案例實戰(2)

語言: CN / TW / HK

我報名參加金石計劃1期挑戰——瓜分10萬獎池,這是我的第7篇文章,點選檢視活動詳情

1. 引言

1.1 專案需求:

本節,我們繼續完善北京市租房資料處理實戰,資料集基本處理請參考本系列上篇文章:【資料處理】北京市租房案例實戰(1) - 掘金 (juejin.cn)

注意:本案例使用 Jupyter Notebook 進行案例演示

首先簡單回顧一下專案要求:

  1. 統計每個區域的房源總數量,並使用熱力圖對房源位置的分佈情況進行分析
  2. 使用條形統計圖分析哪種戶型的數量最多、更受歡迎
  3. 統計每個區域的平均租金,並結合柱狀圖和折線圖分析各區域的房源數量和租金情況
  4. 統計面積區域的市場佔有率,並使用餅圖繪製個區間所佔比例

2. 資料轉換型別

在本資料集中,“面積(㎡)”這一列中存在中文字元,說明這一列資料都是字串型別的。為了方便後續對面積資料進行數學運算,所以需要將“面積(㎡)”一列的資料型別轉換為float型別。

2.1 面積資料型別轉換

  • 建立一個空陣列用來接收新資料
  • 把"面積(㎡)"這列對應的值匯出
  • 使用迴圈遍歷,將對應的字串切分後,追加到空陣列中
  • i[:-2]:表示第i個元素的第一個字元到倒數第二個字元
  • append:在陣列後追加新的元素 ```python

建立一個空的陣列

data_new = np.array([]) data_ares = file_data["面積(㎡)"].values for i in data_ares: data_new = np.append(data_new, np.array(i[:-2]))

data_new ``` 執行結果如下圖所示:

image.png - 新陣列中儲存的資料雖然被切分成功,但是還不是數值的形式 - 需要將其資料型別轉換為浮點數 - 程式碼如下所示: ```python

轉換data_new中的資料型別

data_new = data_new.astype(np.float64) data_new ``` 執行結果如下圖所示:

image.png - 將轉換為浮點數以後的陣列替換原資料集 - 先索引到要替換的列,然後對該列進行賦值 - 具體程式碼如下所示: ```python

替換原資料

file_data.loc[:, "面積(㎡)"] = data_new file_data ``` 執行結果如下圖所示:可以看出"面積(㎡)"那一列資料的單位名稱被切掉了,只保留浮點數形式,方便後續的資料處理。

image.png