Skip to main content

Data transformation framework for LinkML data models

Project description

Koza - Knowledge Graph Transformation and Operations Toolkit

Pyversions PyPi Github Action

pupa

Documentation

Overview

Koza is a Python library and CLI tool for transforming biomedical data and performing graph operations on Knowledge Graph Exchange (KGX) files. It provides two main capabilities:

📊 Graph Operations (New!)

Powerful DuckDB-based operations for KGX knowledge graphs:

  • Join multiple KGX files with schema harmonization
  • Split files by field values with format conversion
  • Prune dangling edges and handle singleton nodes
  • Append new data to existing databases with schema evolution
  • Multi-format support for TSV, JSONL, and Parquet files

🔄 Data Transformation (Core)

Transform biomedical data sources into KGX format:

  • Transform csv, json, yaml, jsonl, and xml to target formats
  • Output in KGX format
  • Write data transforms in semi-declarative Python
  • Configure source files, columns/properties, and metadata in YAML
  • Create mapping files and translation tables between vocabularies

Installation

Koza is available on PyPi and can be installed via pip/pipx:

[pip|pipx] install koza

Usage

See the Koza documentation for complete usage information.

Key Features

🔧 Multi-Format Support

  • Native support for TSV, JSONL, and Parquet KGX files
  • Automatic format detection and conversion
  • Mixed-format operations in single commands

🛡️ Schema Flexibility

  • Automatic schema harmonization across heterogeneous files
  • Schema evolution with backward compatibility
  • Comprehensive schema reporting and validation

High Performance

  • DuckDB-powered operations for fast bulk processing
  • Memory-efficient handling of large knowledge graphs
  • Parallel processing and streaming where possible

🔍 Rich CLI Experience

  • Progress indicators for long-running operations
  • Detailed statistics and operation summaries
  • Dry-run modes for safe operation preview

🧹 Data Integrity

  • Dangling edge detection and preservation
  • Duplicate detection and removal strategies
  • Non-destructive operations with data archiving

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-2.6.2.tar.gz (435.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

koza-2.6.2-py3-none-any.whl (168.6 kB view details)

Uploaded Python 3

File details

Details for the file koza-2.6.2.tar.gz.

File metadata

  • Download URL: koza-2.6.2.tar.gz
  • Upload date:
  • Size: 435.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.22

File hashes

Hashes for koza-2.6.2.tar.gz
Algorithm Hash digest
SHA256 9f0a62d96fbacbe17b5e0c031ed46d1571df0c8a983c5dc73e955057067e43df
MD5 13d6e25003634ea4343649d8973182fd
BLAKE2b-256 caea27cdf79c0cc060dafdd84874b6e3ec68ce8aad5c37f3b286973c1c82cd5a

See more details on using hashes here.

File details

Details for the file koza-2.6.2-py3-none-any.whl.

File metadata

  • Download URL: koza-2.6.2-py3-none-any.whl
  • Upload date:
  • Size: 168.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.22

File hashes

Hashes for koza-2.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 70e2bdb07d938de128df5dcbcb7721e9d2403bde3d8faaa39c8ef24eb2a3d6cc
MD5 2dc7ea78a9c2cbe7026cc7eea7faaafe
BLAKE2b-256 f3601e8379044f3075c80f7ca9196191bded62d50f3535f9743f6e07e3735849

See more details on using hashes here.

Supported by

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