iT邦幫忙

2022 iThome 鐵人賽

DAY 18
0
AI & Data

預測惱人的人事物:跟我一起學習如何用資料分析來避開他們系列 第 18

文獻閱讀實作:整理檔案結構 & Python 環境設置

  • 分享至 

  • xImage
  •  

今天讓我們從以下這篇文章的角度出發,藉由閱讀以及實際操作的過程,一起思考有什麼方式可以達成目的。

Machine Learning with Datetime Feature Engineering: Predicting Healthcare Appointment No-Shows

文章出處:https://towardsdatascience.com/machine-learning-with-datetime-feature-engineering-predicting-healthcare-appointment-no-shows-5e4ca3a85f96

為何選擇這篇文章

  1. 預測的類型相同:利用時間、日期的因素預測某個事件的發生
  2. 解說易懂,實作亦不會跳太快

文章整理

緣由

由於五分之一的病人會在預定的時間缺席,不論對於病人自身、其他病人或是醫療服務提供者來說,都是一個不樂見的情形。

專案說明

給定日期以及時間,預測病人是否會遲到或缺席。

資料欄位

  1. ScheduledDay: 雙方訂好將來什麼時候看診的那天,包含具體時間以及日期。
  2. AppointmentDay:預定看診日,沒有具體時間。
  3. No-Show: 是否未出席。

例如小明預定上週五 17:00 預定這週二要洗牙,那麼 ScheduledDay 就是上週五的 17:00,而週一就是 AppointmentDay。

其餘部分在接下來的實作中,如有必要會特別提出說明。


實作

檔案結構

讓我們回到先前的實作中,讀者們的資料夾內,目前應該是這個樣子:
https://ithelp.ithome.com.tw/upload/images/20221003/20141357o94fv9EhVT.png

我們預計仍會在同一個專案中處理,不過為了更好區分結構化的部分以及預測的部分,讓我們建立兩個資料夾:

  1. prediction
  2. structurization

並且將除了 .gitignoreREADME.mdREADME.md 以外的檔案,搬移到 structurization中。

同時,讓我們在 predictionstructurization 複製一份 annoyance_output_manual.csv 過來,並命名為 annoyance_output_manual_for_predict.csv

Python 環境建置

筆者對於 Python 較不熟悉,加上開始學習 Python 至今使用的這台電腦是 Apple M1 的 CPU,一開始在虛擬環境(印象中是這個環節)上碰到了一些問題(現在可能這些問題都已有解法)。最終是使用 Anaconda 來達到環境設置以及虛擬環境的效果。

為了方便,目前都還是使用 Anaconda 設置 Python 的環境。取捨就是 Anaconda 佔的空間較大,現在佔了大概 6 GB 左右的容量(兩個虛擬環境都是安裝訓練模型用的套件)。

https://ithelp.ithome.com.tw/upload/images/20221003/20141357Qg25cdiaFy.png

如果容量有限的讀者不妨先研究選擇 venv 或是 virtualenv 等虛擬環境。

設置專屬於專案的環境

讓我們建置環境,在 Terminal 輸入:

conda create --name annoyance  python=3.8

使用 python 3.8 是因為先前預測驗證碼的專案也同樣是使用 3.8,預期使用的套件差不多,所以仍選擇之。目前 3.8 安裝的是 3.8.13

建置完成後啟動,在 Terminal 輸入:

conda activate annoyance

讓我們在 prediction 底下開一個 predict.py 檔。

最終的檔案結構長這樣:
https://ithelp.ithome.com.tw/upload/images/20221003/201413574VjNMWdREp.png

今天收工!

延伸閱讀

Changelog

  • 20221005: Add Read More Section

上一篇
文獻閱讀整理:資料分析需要的統計學
下一篇
文獻閱讀實作:用 Pandas 概覽目前的資料集 & 擬定分析方向
系列文
預測惱人的人事物:跟我一起學習如何用資料分析來避開他們38
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言