LinkML数据模型的数據轉換框架
项目描述
Koza - 一个数据转换框架
免责声明:Koza处于测试阶段 - 我们正在寻找测试者!
概述
- 转换csv、json、yaml、jsonl和xml,并将它们转换为基于您的数据类模型的目标csv、json或jsonl格式。
- Koza还可以输出KGX格式的数据
- 使用半声明性Python编写数据转换
- 使用yaml配置源文件、预期的列/json属性和路径过滤器、字段过滤器以及元数据
- 创建或导入用于摄取的映射文件(例如id映射、类型映射)
- 创建和使用翻译表以在源词汇和目标词汇之间进行映射
安装
Koza 可在 PyPi 上找到,并可通过 pip/pipx 安装。
[pip|pipx] install koza
使用方法
注意:自版本 0.2.0 开始,获取您的 ingests 的 KozaApp
实例有了一种新的方法。请参阅更新后的文档以获取详细信息。
有关使用信息,请参阅Koza 文档。
尝试示例
验证
给 Koza 提供一个本地或远程 csv 文件,并获取一些基本信息(标题,行数)
koza validate \
--file https://raw.githubusercontent.com/monarch-initiative/koza/main/examples/data/string.tsv \
--delimiter ' '
发送 json 或 jsonl 格式的文件将确认文件是否是有效的 json 或 jsonl
koza validate \
--file ./examples/data/ZFIN_PHENOTYPE_0.jsonl.gz \
--format jsonl
koza validate \
--file ./examples/data/ddpheno.json.gz \
--format json
转换
运行示例 ingests,"string/protein-links-detailed"。
koza transform \
--source examples/string/protein-links-detailed.yaml \
--global-table examples/translation_table.yaml
koza transform \
--source examples/string-declarative/protein-links-detailed.yaml \
--global-table examples/translation_table.yaml
注意:Koza 期望目录结构如上述示例所示
源配置文件和转换代码位于同一目录中
.
├── ...
│ ├── your_source
│ │ ├── your_ingest.yaml
│ │ └── your_ingest.py
│ └── some_translation_table.yaml
└── ...
项目详情
下载文件
下载适用于您平台的电影文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
koza-0.7.1.tar.gz (28.2 kB 查看散列)
构建分发
koza-0.7.1-py3-none-any.whl (36.3 kB 查看散列)