一个Python库和一组命令行实用程序,用于交换符合Biolink模型的知识图(KGs)。

kgx的Python项目详细描述


知识图形交换

PythonBuild StatusDocumentation StatusQuality Gate StatusMaintainability RatingCoveragePyPIDocker

KGX(Knowledge Graph Exchange)是一个Python库和一组用于交换的命令行实用程序 符合Biolink Model或与Biolink Model对齐的知识图(kg)。在

核心数据模型是一个Property Graph(PG),表示 在Python内部使用networkx MultiDiGraph model。在

KGX允许转换为:

KGX还将提供验证,以确保KG符合Biolink模型:确保节点 使用Biolink类进行分类,使用有效的Biolink关系类型标记边缘,并使用有效的属性。在

内部表示是一个属性图,特别是networkx多有向图。在

该图的结构预计符合Biolink模型标准,简要总结如下:

  • Nodes
    • id:CURIE;必需
    • name:string;推荐
    • category:string;广泛的高级类型。对应于Neo4j中的节点标签
    • 其他财产
  • Edges
    • subject:CURIE;必需
    • edge_label:CURIE;必需;对应于Neo4j中的边缘标签
    • object:CURIE,必需
    • relation:CURIE;必需
    • 其他财产

除了主代码基之外,KGX还提供了一系列command line operations。在

用户安装

KGX在PyPI上可用,您可以通过python pip安装KGX。在

Note: the installation of KGX requires Python 3.7+

pip install kgx

开发者安装

Python3.7+和核心工具依赖性

Note: the installation of KGX requires Python 3.7+

您应该首先确认Python的哪个版本 您已经根据操作系统的最佳实践运行并升级到v3.7。 还假设安装了通用开发工具,包括git、pip和所有必要的工具 操作系统的开发库。在

获取存储库

转到您希望托管本地项目存储库的位置并克隆存储库:

^{pr2}$

为KGX配置虚拟环境

为了方便起见,请使用Pythonvenv模块来创建一个轻量级的虚拟环境。在

Note that you may also have to install the appropriate venv package for Python 3.7.

For example, under Ubuntu Linux, you might

sudo apt-get install python3.7-venv  

一旦venv可用,请键入:

python3 -m venv venv
source venv/bin/activate

安装Python依赖项

应用程序的Python依赖项需要使用一个版本安装到本地环境中 与Python3.7+安装匹配的pip(这里假设称为pip3)。在

Again, follow the specific directives of your operating system for the installation.

For example, under Ubuntu Linux, to install the Python 3.7 matched version of pip, type the following:

sudo apt-get install python3-pip

which will install the pip3 command.

此时,建议在继续下一步之前单独安装wheel包依赖项 (注意:这里假设您的venv被激活)

pip3 install wheel

安装wheel包后,安装KGX:

pip3 install -r requirements.txt

要安装KGX

python3 setup.py install

要测试安装是否成功,请运行以下命令:

kgx --help

它将调用KGX CLI工具。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Android上已连接音频输入设备的java列表   java是创建类的新对象还是使用静态方法?   Java:Shift/Rotate对象数组   Java Casting ArrayIterator<Object>   在java中返回布尔值时出错   无法确定文本文件读入程序(java)中的各种元素   Java Swing JToolBar   JAVAlang.IllegalStateException执行Ghost4J(Linux 32对64位)   jvm如何增加ubuntu系统的java堆化?   java CORS策略“AccessControlAllowOrigin”(Anguar 8和Servlet)   使用dagger 2的java视图依赖项注入   单元测试中RxJava的java模拟活动生命周期   arraylist中的Java打印字符串   java返回值显示为0.0。为什么会这样?   java是clientserver应用程序所必需的MVC吗?   ByteToMessageDecoder类中的java内存泄漏   java将大量文档写入firestore   GWT项目中的java TomcatMaven插件。两者之间的区别是什么:org。科德豪斯。魔咒和组织。阿帕奇。公猫maven插件   java swing:向JTree项添加自定义图形按钮