跳转到主要内容

生成和应用一致性的生物医学词汇表

项目描述

Biolexica

Tests PyPI PyPI - Python Version PyPI - License Documentation Status Codecov status Cookiecutter template from @cthoyt Code style: black Contributor Covenant

biolexica帮助生成和应用一致性的生物医学词汇表。它负责以下方面

  1. 使用pyobobioontologiesbiosynonyms等从多种输入(本体、数据库、自定义)中获取名称和同义词。
  2. 使用semra合并等效术语,以充分利用来自不同来源的同义词。
  3. 使用Gilda生成词汇索引和进行命名实体识别。

重要的是,我们在lexica/文件夹中预定义了几个实体类型的词汇表,可以直接与Gilda一起使用,包括

  1. 细胞和细胞系
  2. 疾病、状况和其他表型
  3. 解剖术语、组织、器官系统等。

入门

加载预定义的grounder,例如这样

import biolexica

grounder = biolexica.load_grounder("phenotype")

>>> grounder.get_best_match("Alzheimer's disease")
Match(reference=Reference(prefix='doid', identifier='10652'), name="Alzheimer's disease", score=0.7778)

>>> grounder.annotate("Clinical trials for reducing Aβ levels in Alzheimer's disease have been controversial.")
[Annotation(text="Alzheimer's disease", start=42, end=61, match=Match(reference=Reference(prefix='doid', identifier='10652'), name="Alzheimer's disease", score=0.7339))]

注意:Biolexica构建了一个扩展版本的gilda.Grounder,该版本包含便捷函数和一个更简单的使用Pydantic编码的匹配数据模型。

使用给定的grounder在PubMed中搜索摘要并进行注释

import biolexica
from biolexica.literature import annotate_abstracts_from_search

grounder = biolexica.load_grounder("phenotype")
pubmed_query = "alzheimer's disease"
annotations = annotate_abstracts_from_search(pubmed_query, grounder=grounder, limit=30)

🚀 安装

最新版本可以从PyPI安装

pip install biolexica

最新代码和数据可以直接从GitHub安装

pip install git+https://github.com/biopragmatics/biolexica.git

👐 贡献

我们欢迎贡献,无论是提交问题、提交拉取请求还是进行分叉。有关参与的更多信息,请参阅CONTRIBUTING.md

👋 赋权

⚖️ 许可证

本包中的代码采用MIT许可证。

🍪 Cookiecutter

本包使用@audreyfeldroycookiecutter包和@cthoytcookiecutter-snekpack模板创建。

🛠️ 对于开发者

请参阅开发者说明

README的最后部分是如果您想通过代码贡献来参与其中。

开发安装

要在开发模式下安装,请使用以下命令

git clone git+https://github.com/biopragmatics/biolexica.git
cd biolexica
pip install -e .

🥼 测试

在克隆存储库并使用pip install tox安装tox后,可以使用以下命令重复运行tests/文件夹中的单元测试

tox

此外,这些测试在每次提交时都会自动重新运行,具体请参阅GitHub Action

📖 构建文档

可以使用以下命令在本地构建文档

git clone git+https://github.com/biopragmatics/biolexica.git
cd biolexica
tox -e docs
open docs/build/html/index.html

文档会自动安装包以及setup.cfg中指定的docs额外内容。可以在此处添加像texext这样的sphinx插件。此外,它们还需要添加到docs/source/conf.py中的extensions列表。

可以使用ReadTheDocs通过此指南部署文档。.readthedocs.yml YAML文件包含您需要的所有配置。您还可以在GitHub上设置持续集成,以检查Sphinx是否可以在隔离环境中构建文档(即,使用tox -e docs-test),以及ReadTheDocs是否也可以构建。

📦 发布版本

在开发模式下安装包并使用pip install tox安装tox后,创建新版本的命令包含在tox.ini中的finish环境中。请在shell中运行以下命令

tox -e finish

此脚本执行以下操作

  1. 使用Bump2Versionsetup.cfgsrc/biolexica/version.pydocs/source/conf.py中的版本号更改为不带-dev后缀
  2. 使用build将代码打包成tar存档和wheel包
  3. 使用twine上传到PyPI。请确保有一个配置好的.pypirc文件,以避免在此步骤中需要手动输入
  4. 将代码推送到GitHub。您需要创建一个与版本提升提交对应的发布
  5. 将版本提升到下一个补丁版本。如果您进行了重大更改并希望通过次要版本提升版本,可以在之后使用tox -e bumpversion -- minor

项目详情


下载文件

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

源代码分布

biolexica-0.0.6.tar.gz (24.7 kB 查看哈希)

上传时间 源代码

构建分布

biolexica-0.0.6-py3-none-any.whl (18.7 kB 查看哈希)

上传时间 Python 3

由以下机构支持