综合接触网生成
synthpops的Python项目详细描述
合成聚合物
synthops是一个模块,旨在生成用于COVID-19(SARS-CoV-2)流行病分析的合成种群。synthops可以创建具有不同网络特性的通用种群,以及在多层接触网络的不同层中相互作用的合成种群。^{str1}$Note:synthops目前正在积极开发中,并不是所有的特性都得到了充分的测试和记录。目前,合成种群只在一个地区(美国西雅图)实施。我们正在扩大范围,以纳入其他地区的数据。在
开发该代码是为了结合我们的Covasim repository来探索接触网中接触追踪和测试的影响。在
更广泛的安装和使用说明在SynthPops documentation中。在
安装
Python>;=3.6是必需的。不支持Python2。建议使用虚拟环境,但不是必需的。在
要安装,请先克隆GitHub存储库,然后键入:
python setup.py develop
注意:虽然synthpops
也可以通过pypi安装,但此方法当前不包括运行所需的数据文件,因此不建议使用。在
快速入门
以下代码为华盛顿州西雅图市创建了一个合成人口:
importsynthpopsasspsp.validate()datadir=sp.datadir# this should be where your demographics data folder resideslocation='seattle_metro'state_location='Washington'country_location='usa'sheet_name='United States of America'level='county'npop=10000# how many people in your populationsp.generate_synthetic_population(npop,datadir,location=location,state_location=state_location,country_location=country_location,sheet_name=sheet_name,level=level)
使用
除了documentation,有关用法示例,请参阅examples
文件夹。在
结构
所有核心建模都在synthpops
文件夹中;标准用法是import synthpops as sp
。在
数据
data
文件夹包含所需的人口统计数据和一些为不同规模的人群预先生成的联系网络。请更新synthops.datadir指向这个目录。在
许可证
licenses
文件夹包含:
NOTICE
:第三方软件通知和信息notice.py
:自动生成通知文件的Scraper。在
合成器
synthpops
文件夹包含:
__init__.py
api.py
config.py
:设置datadir
点的位置的方法;这应该是数据文件夹的路径。在contact_networks.py
:使用人口统计数据创建一个综合人口,并将人们安置到家庭、学校和工作场所。在contacts.py
:创建其他类型接触网和加载多层网络的函数。在plot_tools.py
:绘制接触网中某一层年龄混合矩阵的函数。在synthpops.py
:调用人口统计数据和抽样函数的函数。在version.py
:版本和日期。在
测试
tests
文件夹包含synthops中可用的不同功能的测试。在
免责声明
这个存储库中的代码是由IDM开发的,用于支持我们在疾病传播和流行病管理方面的研究。我们已经在Creative Commons Attribution非商业性Sharelike 4.0许可证下将其公开,以使其他人更好地了解我们的研究,并有机会在其基础上进行自己的工作。我们不表示代码按预期工作,也不表示我们将提供支持、解决发现的问题或接受请求。欢迎您根据Creative Commons Attribution非商业性Sharelike 4.0许可证创建自己的fork并修改代码以满足您自己的建模需求。在
- 项目
标签: