Skip to main content

CL ToolKit

Build Status Documentation Status PyPI

A Python Library for the Processing of Cross-Linguistic Data.

By Johann-Mattis List and Robert Forkel.

Overview

While pycldf provides a basic Python API to access cross-linguistic data encoded in CLDF datasets, cltoolkit goes one step further, turning the data into full-fledged Python objects rather than shallow proxies for rows in a CSV file. Of course, as with pycldf's ORM package, there's a trade-off involved, gaining convenient access and a more pythonic API at the expense of performance (in particular memory footprint but also data load time) and write-access. But most of today's CLDF datasets (or aggregations of these) will be processable with cltoolkit on reasonable hardware in minutes - rather than hours.

The main idea behind cltoolkit is making (aggregated) CLDF data easily amenable for computation of linguistic features in a general sense (e.g. typological features, etc.). This is done by

  • providing the data for processing code as Python objects,
  • providing a framework that makes feature computation as simple as writing a Python function acting on a cltoolkit.models.Language object.

In general, aggregated CLDF Wordlists provide limited (automated) comparability across datasets (e.g. one could compare the number of words per language in each dataset). A lot more can be done when datasets use CLDF reference properties to link to reference catalogs, i.e.

cltoolkit objects exploit this extended comparability by distinguishing "senses" and "concepts" and "graphemes" and "sounds" and providing convenient access to comparable subsets of objects in an aggregation (see models.py).

See example.md for a walk-through of the typical workflow with cltoolkit.

Release files for cltoolkit 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cltoolkit 0.3.0
File Size Uploaded
cltoolkit-0.3.0.tar.gz 31.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cltoolkit 0.3.0
File Interpreter ABI Platform
cltoolkit-0.3.0-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 58.0 kB

Release files / cltoolkit-0.3.0.tar.gz

Download URL cltoolkit-0.3.0.tar.gz
Size 31.3 kB
Tags Source
SHA-256 checksum
How to use checksums
8179cdb9a12cdae49a8346737bdff9bcb34011ea7971f3587002850264e7d661
BLAKE2b-256 checksum
How to use checksums
b818e7fdc71546620c0f163a0fefae6bed26dc806f21473146147296d18d5251
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / cltoolkit-0.3.0-py2.py3-none-any.whl

Download URL cltoolkit-0.3.0-py2.py3-none-any.whl
Size 26.7 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
356c53fa3de08e05c7c44de7603c2df0c19dc1c1f379348adb1cc24a12c4551d
BLAKE2b-256 checksum
How to use checksums
d405573092e937a35b32fc7ef277a6252656d325f0aad2420891bc51330518b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page