SyntheaTM 患者生成器
SyntheaTM是一个合成患者群体模拟器。其目标是以各种格式输出合成的、真实(但非真实存在)的患者数据和相关健康记录。
目前,SyntheaTM的特点包括:
- 从出生到死亡的生命周期
- 基于配置的统计和人口统计数据(默认使用马萨诸塞州人口普查数据)
- 模块化规则系统
- 可插入的通用模块
- 自定义Java规则模块以提供额外功能
- 初级保健就诊、急诊就诊和症状驱动的就诊
- 疾病、过敏、药物、疫苗接种、观察/生命体征、实验室检查、医疗程序、护理计划
- 格式
- HL7 FHIR(R4、STU3 v3.0.1和DSTU2 v1.0.2)
- 批量FHIR(ndjson格式,设置
exporter.fhir.bulk_data = true
以启用) - C-CDA(设置
exporter.ccda.export = true
以启用) - CSV(设置
exporter.csv.export = true
以启用) - CPCDS(设置
exporter.cpcds.export = true
以启用)
- 使用Graphviz渲染规则和疾病模块
开发者快速入门
这些说明适用于那些希望检查Synthea源代码、扩展它或在本地构建代码的人。仅希望运行Synthea的用户应该遵循基本设置和运行说明。
安装
系统要求: SyntheaTM需要Java JDK 11或更新版本。我们强烈建议使用Java的长期支持(LTS)版本,如11或17,因为使用较新的非LTS版本可能会出现问题。
克隆SyntheaTM仓库,然后构建并运行测试套件:
git clone https://github.com/synthetichealth/synthea.git
cd synthea
./gradlew build check test
更改默认属性
默认属性文件值可以在src/main/resources/synthea.properties
中找到。
默认情况下,synthea不生成CCDA、CPCDA、CSV或批量FHIR(ndjson)。你需要
调整此文件以激活这些功能。有关更多详细信息,请参阅wiki,
或使用我们的引导式自定义工具。
生成合成患者
一次生成一个人口...
./run_synthea
可以提供命令行参数来指定州、城市、人口规模或随机种子。
run_synthea [-s seed] [-p populationSize] [state [city]]
通过传递-h
选项可以打印完整的使用信息。
$ ./run_synthea -h
> Task :run
用法:run_synthea [选项] [州 [城市]]
选项:[-s seed]
[-cs clinicianSeed]
[-p populationSize]
[-r referenceDate as YYYYMMDD]
[-g gender]
[-a minAge-maxAge]
[-o overflowPopulation]
[-c localConfigFilePath]
[-d localModulesDirPath]
[-i initialPopulationSnapshotPath]
[-u updatedPopulationSnapshotPath]
[-t updateTimePeriodInDays]
[-f fixedRecordPath]
[-k keepMatchingPatientsPath]
[--config*=value]
* src/main/resources/synthea.properties中的任何设置
示例:
run_synthea Massachusetts
run_synthea Alaska Juneau
run_synthea -s 12345
run_synthea -p 1000
run_synthea -s 987 Washington Seattle
run_synthea -s 21 -p 100 Utah "Salt Lake City"
run_synthea -g M -a 60-65
run_synthea -p 10 --exporter.fhir.export=true
run_synthea --exporter.baseDirectory="./output_tx/" Texas
可以在./src/main/resources/synthea.properties
中更改一些设置。
SyntheaTM将在./output
中以C-CDA和FHIR格式输出患者记录。
SyntheaTM GraphViz
生成SyntheaTM规则和模块的图形可视化。
./gradlew graphviz
概念和属性
生成概念(用于记录)或属性(每个患者的变量)列表。
./gradlew concepts
./gradlew attributes
许可证
版权所有 2017-2023 MITRE公司
根据Apache许可证2.0版("许可证")获得许可; 除非遵守许可证,否则您不得使用此文件。 您可以在以下位置获取许可证副本:
http://www.apache.org/licenses/LICENSE-2.0
除非适用法律要求或书面同意,否则根据许可证分发的软件 是基于"按原样"分发的,不附带任何明示或暗示的担保或条件。 有关许可证下的特定语言管理权限和 限制,请参阅许可证。