Skip to main content

使用基于代理的模型进行传染病模拟

项目描述

CDSLib - 代理

欢迎使用CDSLib - 代理程序包。

开源爱 svg2 派皮 PyPI - Python 版本 维护 GitHub 贡献者

执照

执照

赞助商

由...赞助 由...赞助 由...赞助
UdeA 徽标 Minciencias 徽标 塞纳标志

代码质量指标

质量门状态 错误 代码气味 覆盖范围 重复行 (%) 代码行 可维护性评级 可靠性等级 安全等级 技术债务 漏洞

描述

作为传染病模拟库的一部分, CDSLib-Agents软件包旨在用于使用基于代理的模型对传染病进行建模和模拟,并已用于传染病模拟实验室的开发。

该软件包由异质代理群体的不同实现组成,这些代理遵循行为规则,这些规则决定了它们的运动以及它们的传染性和临床状态的演变。

当前的实现允许代理在基于人口数据的速度分布之后在双维度空间中移动。这可以通过包含分布模块来实现,该模块是不同工具的包装器,提供类似分布的功能支持。

关于疾病状态,当前实现还允许用户根据需要添加尽可能多的状态,并创建疾病的自定义自然历史(即设计用于疾病状态演变的自定义图)。

更多信息请参考项目的官方文档。

测试

所有测试都是使用 python 工具 pytest 开发的。要正确查看它们,请在命令行中键入:

$ poetry run pytest <name_of_test_file>

在相同的测试文件中。

标志与 pytest 一起用于修改输出报告的方面。使用 pytest 键入标志可能很乏味,但是,可以修改pytest.init文件以 更改默认命令行选项。这允许采用尽可能多的标志。在我们的例子中,它被采用了以下标志:-s, --no-header, -rA, -vv, --cov, --cov-branch.

在使用 pytest 执行测试期间,将 捕获发送到 stdout 和 stderr 的任何输出。该-s标志
禁用所有捕获并让用户查看所有输出,这非常重要,因为所有测试的描述都输入在每个方法的文档字符串中。

--no-header标志禁用初始标头

-rA标志显示所有测试的额外测试摘要信息

-vv标志指示 pytest 在详细模式下运行,这控制所有 pytest 输出。

该标志--cov产生一个覆盖报告。它显示了测试覆盖的代码行的百分比,同时--cov-branch显示了覆盖的分支。分支是代码在找到 if 语句或类似语句时做出的决定。

有关pytest 标志的更多信息。

可以同时运行所有测试,而不是运行一个测试。您必须在tests目录中,并在命令行中键入:

$ poetry run pytest

为了修改测试的初始条件,使用所有测试文件开头的fixtures方法。

回购标志

作者和主要贡献者

GitHub 贡献者

该软件包由 Camilo Hincapié(主要作者)、 Ian MejíaEmil RuedaNicole RiveraCarolina Rojas Duque以及Lina Marcela Ruiz Galvis 关于流行病学的概念性贡献 撰写。

这项工作的其他杰出贡献者是 Alejandro CampilloDaniel Alfonso Montoya

联系我们

对此类模型的开发有任何建议,请关注我们官方 的 GitHub讨论频道。

发展

创建虚拟环境

这个包是使用PyenvPoetry管理的。为了正确创建 virtualenv,请使用:

$ pyenv install 3.9.7
$ poetry env use 3.9.7
$ poetry install

然后激活 virtualenv 运行poetry shell,并停用虚拟环境并退出这个新的 shell 类型exit

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

cdslib_agents-0.0.9.tar.gz (134.8 kB 查看哈希

已上传 source

内置分布

cdslib_agents-0.0.9-py3-none-any.whl (68.2 kB 查看哈希

已上传 py3