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)
- Text files (
- 🖼️ 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 folderMIN_LIST_LENGTH = 3: Minimum number of items to show when clipping large listsLIST_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
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 Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file describe_dataset-0.1.2.tar.gz.
File metadata
- Download URL: describe_dataset-0.1.2.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c3c5147fe1db9407151d3b48b7554858c174806acb910c4ad27ae174410bc70b
|
|
| MD5 |
df4ac3080562a18795218a96866bf157
|
|
| BLAKE2b-256 |
2f7e76f65f492372d698b2966f28c014158808f9a65a871ec40779d2f6861851
|
File details
Details for the file describe_dataset-0.1.2-py3-none-any.whl.
File metadata
- Download URL: describe_dataset-0.1.2-py3-none-any.whl
- Upload date:
- Size: 4.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
511f87ee3589d658071f22334568dff4cc88445058a27f9817b405b2e6d19866
|
|
| MD5 |
dd969377c424e5bcccaa7fee287e2bac
|
|
| BLAKE2b-256 |
51ed3299f20ba0e4ffdada68915abe2266704f51ba67fb96a09d142196708b7f
|