Skip to main content

Add your description here

Project description

DescribeDataset

A Python tool for generating human-readable descriptions of dataset structures. This tool helps you understand the organization and content of your datasets by providing a clear, textual representation that can be used with LLMs or for documentation purposes.

Features

  • 📁 Recursive folder structure exploration
  • 📊 Support for multiple file formats:
    • Text files (.txt)
    • JSON files (.json)
    • YAML files (.yaml, .yml)
    • CSV files (.csv)
    • Images (.jpg, .jpeg, .png, .gif, .bmp, .webp)
  • 🖼️ Image resolution information
  • 📏 Smart list clipping for large directories
  • 📝 Total item count for folders
  • 🛡️ Error handling for corrupted files

Installation

pip install describe-dataset

Usage

Command Line

python -m describe_dataset /path/to/your/dataset

Python API

from describe_dataset import describe_dataset
from pathlib import Path

# Get dataset description
description = describe_dataset(Path("/path/to/your/dataset"))
print(description)

Example Output

Top level of the dataset contains:
    folder images
    folder annotations
    file config.yaml

Content of images folder:
Total items in folder: 1000 (showing first 3)
- image1.jpg (file)
  image of resolution 1920x1080
- image2.jpg (file)
  image of resolution 1280x720
- image3.jpg (file)
  image of resolution 800x600

Content of annotations folder:
- train.json (file)
{
    "version": "1.0",
    "images": [...],
    "annotations": [...]
}

Description of config.yaml file:
name: my-dataset
version: 1.0
classes:
  - car
  - pedestrian
  - bicycle

Configuration

The tool has several configurable parameters:

  • DIFFERENT_FILES_LIMIT = 10: Maximum number of different files to show in a folder
  • MIN_LIST_LENGTH = 3: Minimum number of items to show when clipping large lists
  • LIST_SIZE_THRESHOLD_FOR_MIN_LENGTH = 20: Threshold for when to start clipping lists

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

describe_dataset-0.1.1.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

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

describe_dataset-0.1.1-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file describe_dataset-0.1.1.tar.gz.

File metadata

  • Download URL: describe_dataset-0.1.1.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.14

File hashes

Hashes for describe_dataset-0.1.1.tar.gz
Algorithm Hash digest
SHA256 30ea1b0095b04552187c3d5c0ed78853783cd74385f2018833ddbb2dd47a686e
MD5 7b4b96aa544737a7e8b3a03fb91e0429
BLAKE2b-256 c0a1978250bc9b14658cb186f83fc2283e7e44ad829f44a8364b3fe73e6010b9

See more details on using hashes here.

File details

Details for the file describe_dataset-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for describe_dataset-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f6c1e5ebe47f50b42b30d7f1db28e31157d37b7e853641119bea1f75624b465f
MD5 d4fa37afef8f086d7dace98df1440707
BLAKE2b-256 f40a3b76d966e64ad6e8e1c1bfdada32044c8f8e69eaae62b73b2e8159e9b7ed

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