Skip to main content

Koza, an ETL framework for the Biolink model

Project description

Koza

pupa Data transformation framework

Disclaimer: Koza is in pre-alpha

Transform csv, json, and jsonl and converting them to a target csv, json, or jsonl format based on your dataclass model. Koza also can output data in the KGX format

Highlights
  • Author data transforms in semi-declarative Python
  • Configure source files, expected columns/json properties and path filters, field filters, and metadata in yaml
  • Create or import mapping files to be used in ingests (eg id mapping, type mappings)
  • Create and use translation tables to map between source and target vocabularies

Installation

pip install koza

Getting Started

Send a local or remove csv file through Koza to get some basic information (headers, number of rows)

koza validate \
  --file https://raw.githubusercontent.com/monarch-initiative/koza/dev/tests/resources/source-files/string.tsv \
  --delimiter ' '

Sending a json or jsonl formatted file will confirm if the file is valid json or jsonl

koza validate \
  --file ./examples/data/ZFIN_PHENOTYPE_0.jsonl.gz \
  --format jsonl
koza validate \
  --file ./examples/data/ddpheno.json.gz \
  --format json \
  --compression gzip
Example: transforming StringDB
koza transform --source examples/string/metadata.yaml 

koza transform --source examples/string-declarative/metadata.yaml 

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

koza-0.0.1a6.tar.gz (236.0 kB view details)

Uploaded Source

Built Distribution

koza-0.0.1a6-py3-none-any.whl (25.4 kB view details)

Uploaded Python 3

File details

Details for the file koza-0.0.1a6.tar.gz.

File metadata

  • Download URL: koza-0.0.1a6.tar.gz
  • Upload date:
  • Size: 236.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.25.1

File hashes

Hashes for koza-0.0.1a6.tar.gz
Algorithm Hash digest
SHA256 e0fe5da97cae6550d5cea554b1a4a62864bd00b9aa369a05c981b4849e582bec
MD5 cf9874d1bd75cef1ac1240c53476b78f
BLAKE2b-256 edcfffaf7bf92d9104759f4115fb0410fef2096e9b1dca6ba45e3927ba6c4362

See more details on using hashes here.

File details

Details for the file koza-0.0.1a6-py3-none-any.whl.

File metadata

  • Download URL: koza-0.0.1a6-py3-none-any.whl
  • Upload date:
  • Size: 25.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.25.1

File hashes

Hashes for koza-0.0.1a6-py3-none-any.whl
Algorithm Hash digest
SHA256 f1dc96878ac8e0ded58a97351cc7da81225eb7fe56400d1b089bae79bd51f748
MD5 c95c51da85e213c12993de7cf55e196b
BLAKE2b-256 ca2cb1cf2941e2d48442110a161af9ef53e429610d3dec87c53b02c57c6c81d4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page