模拟运行结束时自动保存KPIs的技术实现问询
解决方案
1. 导出为CSV格式(最简易可编辑方案)
CSV是纯文本格式,可直接用Excel打开,实现成本极低:
- 模拟结束后,将所有KPI按「指标名称,数值」的格式逐行写入
.csv文件 - 针对治疗总时长这类可能为空的指标,将
null替换为NA或空字符串,避免Excel解析异常 - 示例伪代码(以Python为例,其他语言逻辑通用):
import csv # 整理好所有29个KPI的名称和计算后的值 kpis = [ ["治疗总时长", "NA" if v_N == 0 else round((v_Total_Time_To_Treatment / (v_N*3600.0)), 3)], # 依次添加剩余28个KPI的名称与对应数值 ] # 写入CSV文件 with open("模拟KPI结果.csv", "w", newline="", encoding="utf-8") as f: writer = csv.writer(f) writer.writerow(["指标名称", "数值"]) # 写入表头 writer.writerows(kpis)
- 生成的CSV文件双击即可用Excel打开,后续可直接进行格式调整或数据整理
2. 直接生成Excel文件(支持格式定制)
若需要更规整的格式(如设置小数位数、单元格样式),可使用对应语言的Excel操作库:
- Python:用
pandas快速导出,一行代码即可完成:
import pandas as pd # 构建KPI数据字典 kpi_data = { "指标名称": ["治疗总时长", "指标2", "指标3", ...], "数值": [计算结果1, 计算结果2, 计算结果3, ...] } # 导出为Excel文件 df = pd.DataFrame(kpi_data) df.to_excel("模拟KPI结果.xlsx", index=False)
- Java可使用
Apache POI,C#可使用EPPlus,核心逻辑均为创建工作簿、工作表后写入KPI数据
3. 优化现有控制台打印方案
如果暂时不想调整代码结构,可将控制台输出改为结构化格式,方便后续快速导入Excel:
- 示例JSON格式输出:
{ "治疗总时长": 2.456, "指标2": 0.789, "指标3": 12.345, // 剩余KPI依次列出 }
- 复制这段输出后,可通过Excel的「数据>自JSON」功能直接导入并整理数据
内容的提问来源于stack exchange,提问作者Gaute
相关产品推荐
相关产品推荐

