合成接触网络生成
项目描述
SynthPops
SynthPops是一个模块,旨在生成用于COVID-19(SARS-CoV-2)流行病分析的合成人口。SynthPops可以创建具有不同网络特征的通用人口,以及在不同层级的多层接触网络中相互作用的合成人口。 注意:SynthPops目前正在积极开发中,大多数功能都已完全测试和文档化,但并非全部。我们正在扩展以包括超出华盛顿州西雅图-金县原始范围的其他地区的数据和验证。目前,我们拥有以下位置的数据(在synthpops/data文件夹中)
- 华盛顿州西雅图大都市区,美国
- 华盛顿州斯波坎县,美国
- 美国华盛顿州富兰克林县
- 美国华盛顿州岛县
- 塞内加尔达喀尔,达喀尔地区
- 津巴布韦*
- 马拉维*
- 尼泊尔*
* 这些地点的数据为国家尺度。未来,我们希望为这些地点提供更精细的分辨率数据。
该代码最初是为了探索接触追踪和测试在人类接触网络中的影响而开发的,并与我们的Covasim存储库结合使用。本产品使用人口普查局数据API,但未得到人口普查局的认可或认证。
更详细的安装和使用说明请参阅SynthPops文档。
目前,正在撰写描述该模型的科学论文。如果您使用该模型,在此期间,推荐的引用为:
SynthPops:人类接触网络的生成模型。Mistry D,Kerr CC,Abeysuriya R,Wu M,Fisher M,Thompson A,Skrip L,Cohen JA,Althouse BM,Klein DJ(2021)。(待发表)。
安装
需要Python 3.7或更高版本,但小于3.9。不支持Python 2。虚拟环境强烈推荐但不是必需的。
要安装,首先克隆GitHub存储库
git clone https://github.com/InstituteforDiseaseModeling/synthpops.git
然后通过以下方式安装
python setup.py develop
注意:虽然synthpops
也可以通过pypi安装,但此方法目前不包括所需的功能数据文件,因此不推荐。我们建议使用由Anaconda管理的Python虚拟环境Anaconda来帮助安装。目前,我们推荐的安装步骤如下:
-
安装Anaconda。
-
在现有的conda环境中工作或在Anaconda中创建新环境,通过终端导航到该软件包的目录并运行
python setup.py develop
来安装synthpops。
快速入门
以下代码创建并绘制了一个合成人口的家庭层(使用华盛顿州西雅图默认设置)
import synthpops as sp
import matplotlib.pyplot as plt
n = 10000 # how many people in your population
pop = sp.Pop(n) # create the population
pop.plot_contacts() # plot the contact matrix
plt.show() # display contact matrix to screen
用法
除文档外,请参阅examples
文件夹以获取用法示例。
结构
所有核心建模都在synthpops
文件夹中;标准用法是import synthpops as sp
。
数据
data
文件夹包含算法使用的人口统计数据。
synthpops
synthpops
文件夹包含库,包括
base.py
:不适用于代码库其他区域的常用函数。config.py
:设置通用配置选项的方法。contact_networks.py
:创建具有人口统计数据和将人员放入家庭、学校和工作场所的合成人口的函数。data_distributions.py
:处理数据的函数。households.py
:创建家庭接触网络的函数。ltcfs.py
:创建长期护理设施接触网络的函数。plotting.py
:绘制年龄混合矩阵的函数。pop.py
:SynthPops的基础Pop
类。process_census.py
:处理美国人口普查数据的函数。sampling.py
:统计抽样函数。schools.py
:创建学校接触网络的函数。workplaces.py
:创建工作场所接触网络的函数。
测试
tests
文件夹包含SynthPops中不同功能的测试。
免责声明
本存储库中的代码由IDM开发,以支持我们在疾病传播和流行病管理方面的研究。我们根据《知识共享署名-相同方式共享4.0国际许可协议》将其公开发布,以让其他人更好地了解我们的研究,并有机会在此基础上进行自己的工作。我们不保证代码按预期工作,也不会提供支持,解决发现的问题或接受拉取请求。您可以根据《知识共享署名-非商业性-相同方式共享4.0许可协议》自行创建分支并修改代码以适应自己的建模需求。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码分发
构建版本
synthpops-1.10.5.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | beea4c66447b228357226481009e77040713584344eb4c29daf075161792518b |
|
MD5 | 56aac6ae45113471b1e8c967e266d4f7 |
|
BLAKE2b-256 | 3ea5aa14cc5ff1cf2d0b67b6b9631f809f02c55e13b4f4b079dcb9e763658985 |
synthpops-1.10.5-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9edabde5c042716cf8da57aa3dc782af63b25c03f0bdd935a82bdf48796d2c99 |
|
MD5 | e143bb3454c938b3c8266c161a36d8a7 |
|
BLAKE2b-256 | 5d8079f9707cd4c60ecfa34a8924afd82c907fe6015d45badb1801a811b5c808 |