在瀏覽器內執行 Python(Pyodide),程式碼與繁中註解版 notebook 相同;檔案不會上傳到任何伺服器。
把 A 需要的參數檔整個資料夾壓成一個 zip:14 個 *_para.csv、layer1~3_weibull.csv、TW initial value.csv,以及 L1_adj/、L2_adj/ 兩個資料夾。
主迴圈逐一模擬病人(Sequential)。實測瀏覽器每秒約 60 人,一萬人約 2~5 分鐘(依電腦而定)。
上傳 male_result.csv、result.csv 或本頁下載的 des_patient_paths.csv(需含 D1–D3、time1–time3),只計算年度統計,不重跑模擬。
對應 nonp4pNew.ipynb 的四個輸入。原碼效用段讀的是 DM-nonP4P.0627_out.csv,與成本輸出檔名不同;網頁版直接把成本結果接過去。
資料流
格號 = 註解版 notebook 由上往下第幾格(含 Markdown 格)。網頁版涵蓋 A 與 C;B 需要原檔未定義的 per2010、per2015、percent,未放上網頁。
| 格號 | 輸入/輸出 | 檔名(依讀寫順序) |
|---|---|---|
| 9 | 輸入 | dm_para.csv → ashd_para.csv → chf_para.csv → isc_para.csv → fesrd_para.csv → eye_para.csv → fin_para.csv → ashd+chf_para.csv → ashd+isc_para.csv → chf+isc_para.csv → ashd+chf+isc_para.csv → esrd_para.csv → chf+fin_para.csv → dead_para.csv(Big5) |
| 10 | 輸入 | layer1_weibull.csv → layer2_weibull.csv → layer3_weibull.csv |
| 11 | 輸入 | TW initial value.csv → L1_adj/ 13 檔 → L2_adj/ 13 檔 |
| 23 | 輸出 | male_result.csv(網頁版下載名:des_patient_paths.csv) |
| 25 | 輸出(新增) | annual_complication_counts.csv |
| 40、67 | 輸出 | count_by_yearL1+L2/ 下 8 個狀態檔 |
| 41 | 輸入 | result.csv |
| 43 / 46 / 48 / 52 | 輸出 | time.csv / pathway.csv / pathway(16y).csv / p4p_10yNEVER.csv |
| 54 | 輸入 | cost/cost1~3.csv → QALY/QALY1~3.csv → utility/utility1~3.csv |
| 62 | 輸出 | cost for 10w.csv |
只在畫面顯示:第 14 格 Gumbel 測試值、第 22 格 result2、第 25 格年度寬表、第 28–35 格各層 value_counts()、第 57 格 cost_or_Qaly(...)。
| 格號 | 輸入/輸出 | 檔名 |
|---|---|---|
| 11 | 輸入 | 13 個 *_para.csv(ashd → … → dead,不含 dm;Big5) |
| 12 | 輸入 | layer1_weibull(M).csv → layer2_weibull(M).csv → layer2_gumbel(M).csv |
| 28 | 輸出 | pred5y.csv |
只在畫面顯示:第 21 格 ch、第 26 格 pred、第 27 格 pred['sim']-pred['real']。第 24 格的 year5 存檔指令為註解。
| 格號 | 輸入/輸出 | 檔名 |
|---|---|---|
| 4 | 輸入 | nontest0627.csv → nonp4pshape.csv → nonp4pscale.csv |
| 14 | 輸出 | nonDM-P4P.0627_out.csv |
| 16 | 輸入 | DM-nonP4P.0627_out.csv(與上一列檔名不同) |
| 18 | 輸入 | utility-new.csv |
| 24 | 輸出 | nonP4P-0630_out.csv |
只在畫面顯示:第 4–6 格參數表與病程、第 8–12 格 print(...)、第 13、16、18、23 格末行。