Skip to main content

Tool for exploring columnar data, including multimedia

Project description



Kangas: Explore multimedia datasets at scale

Kangas is a tool for exploring, analyzing, and visualizing large-scale multimedia data. It provides a straightforward Python API for logging large tables of data, along with an intuitive visual interface for performing complex queries against your dataset.

The key features of Kangas include:

  • Scalability. Kangas DataGrid, the fundamental class for representing datasets, can easily store millions of rows of data.
  • Performance. Group, sort, and filter across millions of data points in seconds with a simple, fast UI.
  • Interoperability. Any data, any environment. Kangas can run in a notebook or as a standalone app, both locally and remotely.
  • Integrated computer vision support. Visualize and filter bounding boxes, labels, and metadata without any extra setup.

You can access a live demo of Kangas at kangas.comet.com.

Getting started

Kangas is accessible as a Python library via pip

pip install kangas

Once installed, there are many ways to load or create a DataGrid:

import kangas as kg

# Load an existing DataGrid
dg = kg.read_datagrid("https://github.com/caleb-kaiser/kangas_examples/raw/master/coco-500.datagrid")

# Build a DataGrid from a CSV
dg = kg.read_csv("/path/to/your.csv")

# Build a DataGrid from a Pandas DataFrame
dg = kg.read_dataframe(your_dataframe)

# Construct a DataGrid manually
dg = kg.DataGrid(name="Example 1", columns=["Category", "Loss", "Fitness", "Timestamp"])

After your DataGrid is initialized, you can render it within the Kangas Viewer directly from Python:

dg.show()
image

From the Kangas Viewer, you can group, sort, and filter data. In addition, Kangas will do its best to parse any metadata attached to your assets. For example, if you're using the COCO-500 DataGrid from the quickstart above, Kangas will automatically parse labels and scores for each image:

And viola! Now you're started using Kangas. If you'd like to explore further, take a look at our example notebooks below:

Documentation

  1. Documentation Homepage
  2. Quickstart Notebook
  3. Integrations Notebook

FAQ

Is Kangas ready for public use?

Kangas is currently in an open beta. We stress test Kangas heavily and often, and are confident in sharing with the public. That being said, it is a very young project, and there will be bugs and rough edges. Additionally, new features will be added at a fast pace, so if you find a bug or have a request, please do not hesitate to open a ticket or start a discussion.

Does Kangas support _____ system?

Kangas can be run as a standalone application on newer version of Windows, MacOS, and most popular Linux distributions. In addition, Kangas can run remotely via Google Colab, or within any Jupyter notebook environment.

When should I use Kangas instead of _____?

Pandas

Kangas and Pandas are complimentary tools. When you've wrangled your data into a Pandas DataFrame, Kangas can ingest that DataFrame via the DataGrid.read_dataframe() method, making it easy to visualize and explore your tabular data. Additionally, if your data is too large to process in Pandas or involves multimedia assets, Kangas is a strong alternative.

Tensorboard

TensorBoard is one of several tools (including Kangas parent organization, Comet) that specializes in experiment managment. Like Kangas, it provides charting and visualizations out of the box, but is specifically designed for analyzing training workflows. Kangas, in contrast, is designed to analyze any dataset. For example, even if you use a tool like TensorBoard for analyzing training runs, you may still use Kangas before training for exploratory data analysis, or for prediction analysis post-deployment.

What is Kangas relationship with Comet?

Kangas is developed and maintained by the Research team at Comet ML. It began life as a prototype for Comet users who needed to visualize large computer vision datasets, and was later spun out into a standalone open source project. Kangas is and always will be free and open source software, and we are more than happy to accept community contributions.

Contributing

Kangas has only recently been released, and as such, we don't have much of a formal process for contributions. If you have an idea or would like to make a contribution, we recommend opening a ticket describing your proposed contribution so that we can collaborate directly. We love working with community contributors.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

kangas-1.1.27-py3-none-any.whl (16.1 MB view details)

Uploaded Python 3

File details

Details for the file kangas-1.1.27-py3-none-any.whl.

File metadata

  • Download URL: kangas-1.1.27-py3-none-any.whl
  • Upload date:
  • Size: 16.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.28.1 setuptools/63.4.1 requests-toolbelt/0.9.1 tqdm/4.64.1 CPython/3.8.5

File hashes

Hashes for kangas-1.1.27-py3-none-any.whl
Algorithm Hash digest
SHA256 83b1a30734cfe4f88dc482776ae06f9409226982f7f1e59f8420ab5398107859
MD5 b49b6f8c1f1cf4c475283cc8900f0d00
BLAKE2b-256 b1262d190ff662cca82dc1252dbc010c0c49e22231af70a638238994b614ecb0

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