經過兩個月的局部手術,趁著發佈七月份資料集的機會,開放台灣民間租屋資料,開始增加欄位,以及增加各種對資料處理友善的資訊囉~
新增衍生資料:基本的不重複住宅偵測與刊登者編碼
在此之前,開放租屋(專案簡稱確定!)公佈的是從租屋網站抓下來的原始資料,只要刊登者張貼一筆物件,資料集裡就會多一項紀錄,這樣的資料,雖然保留了最大的利用彈性,但對想要分析租賃住宅的人而言,卻不是一份足夠乾淨的資料。
就目前已知的狀況來說,原始資料主要有兩項問題:
- 刊登資料與事實不符:從單純的手滑打錯,到策略性調整刊登資訊,原始資料裡存在一些明顯不符租屋行情的物件,例如每坪價格超過 15,000 ,或是樓層數超過 90 ,儘管數量不多,但仍會造成統計上的偏差。詳細的推論過程請參見專案 Hackpad,如有發現其他的過濾條件,也歡迎直接編輯。
- 物件重複刊登:基於租屋產業現況,物件重複刊登,在租屋平台裡並不少見,有些是為了隱藏變更紀錄,有些是為了增加曝光,如果把時間跨度拉長到兩三個月,也可以看到少數物件幾乎每兩三天就會重複刊登一次,導致相同物件被重複計算。
針對這兩項問題,開放租屋以「避免誤刪物件」為原則,「可能留下不想要的物件」為代價,以較嚴格的方式,將重複或不是住宅的物件去除,在原始資料外,另外發佈一份資料,供需要的人下載。目前完整的過濾條件,請見七月資料集說明。
雖然只是以較嚴格的方式刪除資料,但七月的資料總量,已經從原始資料的 13 萬筆,下降到大約 11.5 萬筆,每個縣市也已經去除 5% ~ 16%不等的物件,如果觀察每個縣市重複物件的差異,也可以看到不同縣市間的租屋刊登生態,存在至少 2~3種不同的類型。
解決這兩項問題的手段,還有許多改進空間,像是目前都以非常簡單的規則過濾物件,並沒有用上統計或機器學習的機制分類物件,如果有喜歡玩資料的朋友,歡迎下載原始資料來玩玩,為開源專案加入不同的視角。
另外,七月也新增了「刊登者編碼」欄位,作為分析刊登者行為的基礎資料。之所以使用「刊登者編碼」而非手機、姓名等租屋網站上提供的資料,是為了避免刊登者的個人資訊被用在未經授權的地方。刊登者編碼使用隨機的通用唯一識別碼( UUID version 4 ),與刊登者的個人資訊完全無關,可以在公開比原始網頁還要更少資訊的前提下,開放此欄位供人使用。
和重複住宅相同,刊登者編碼的製作以「避免誤認不同刊登者」為原則,所以同樣編碼的刊登者,幾乎一定是同一個人,但編碼不同,卻不一定可以推論是不同的人。
人機友善:資料集的版本控管、JSON格式與二選一欄位更新
由於資料集持續更動,仿照軟體開發來作版本控管,是避免雞同鴨講,提供溝通基礎的一種方法。隨著七月資料集的發行,開放租屋也開始嘗試版本控管流程。五、六月的資料為 0.0 版,七月的資料為 0.1 版,新版的資料集會向下相容,也就是保留原本既有欄位與格式,只做新增,不做刪減,各版的資料集說明,也都會保留在網站中。當有不相容的更新出現時,則會由 0.x版改為 1.0 版。
另外,由於新增欄位的第一個月,不一定都能回溯找到過往物件的新資料,所以使用「BETA」來表示,儘管當月使用了這個版本的資料集定義,但新欄位有可能會有資料不完整的狀況發生。
關於所有版本的發佈紀錄,請見 Github Releases 頁面。
版本控管之外,開放租屋也針對人類與阿宅(?),各做了一項更新:
- 針對人類使用者,由於目前用過資料集的人都說二選一欄位表示為 1/0,不是個很直覺的設計,所以從七月起另外發行一份資料完全相同,但改為顯示 T/F 的版本,後續也會以 T/F 版為主。原本使用 1/0 版的人也不用太擔心,由於這是一個不可逆的變更,1/0 版會持續發佈至今年底才會結束支援,所以還有四個月的時間可以調整使用的分析工具。
- 針對阿宅使用者,則是新增了 JSON 格式的版本,以縣市為單位發佈,內容也用符合 JSON 標準的 null/true/false 取代 CSV 裡的 -/T/F ,方便程式開發者直接操作。
有用才有坑,有坑才能跳
有了七月新發佈的資料,可以在常見的坪數、租金、房型等統計外,更容易看出,各縣市租屋市場的刊登者,在性質上有哪些差異。以物件數量最多的台北與台中為例,如果篩選單一物件重複次數最高的前十五名,把它們的重複數、刊登者編碼、以及仲介資訊拿出來看的話,就可以發現,兩地仲介在 591 的操作上,各有一些值得往下探究的地方。
順道一題,上面兩張圖片使用小巧方便的 CMD 界面 JSON 處理工具 jq ,利用七月新發佈的 JSON 格式資料,不用寫程式也可以很快做出簡單的資料分析呦(不過要懂 JSON + jq ,大概都得是會寫程式的阿宅就是 XD )。
七月的大部分更新,都源自與開放租屋使用者的回饋與需求。像是重複物件偵測的標準,除了 Hackpad 上鄉民的討論外,也得力於勞工陣線的敬舒在作六都基本工資租屋能力調查時,血汗清完數萬筆資料的結論,而後續的資料的除錯和格式建議,則有賴鏡傳媒又如的挖坑與幫忙。
在人力與時間都有限的狀況下,品質最好的資料,來自於最多人回饋與貢獻的資料,反過來說,與其因為在開放租屋找不到想要的資料而觀望,或是因為資料還需勘誤而卻步,不如進來一起挖坑/填坑,讓在意的資料成為心裡最好(?)的那塊就好啦~
關於開放租屋專案
- 目前資料集:2018 年 5/6/7 月都有,每月原始資料筆數都在 13 萬上下,從 7 月開始新增 JSON 與去重複住宅版本。
- 專案網站:https://rentalhouse.g0v.ddio.io
- 資料分析工具:https://viz.rentalhouse.g0v.ddio.io(請來信申請帳號)
- 專案開發文件、功能規劃:https://g0v.hackpad.tw/Ih7Jp4pUD5y
- 專案程式碼:https://github.com/g0v/tw-rental-house-data
- 坑:https://github.com/g0v/tw-rental-house-data/issues