Python implementation of a K-D Tree as a pseudo-balanced Tree
Project description
kdtrees
Python implementation of a K-D Tree as a pseudo-balanced Tree
Overview
A K-Dimensional Tree, or K-D Tree, is a space-partitioning data structure which efficiently organizing points in k-dimensional space. For further details regarding K-D Trees, please see a detailed description on Wikipedia.
kdtrees implementation of a K-D Tree allows for construction, modification, searching, and other helpful functions such as k-nearest neighbors. It also maintains the tree in a pseudo-balanced manner through a secondary invariant where every node is the median ± dimensionality of subsidiary nodes along a specific axis.
More details regarding this implementation can be found in the documentation here.
Installation
Dependencies
kdtrees requires:
- numpy
kdtrees is tested and supported on Python 3.4+ up to Python 3.7. Usage on other versions of Python is not guaranteed to work as intended.
User Installation
kdtrees can be easily installed using pip
pip install kdtrees
Changelog
See the changelog for a history of notable changes to kdtrees.
Development
kdtrees is fully implemented for basic functionality. However, it may not have every utility function or have the most optimized algorithms. We welcome contributors of all experience levels to help grow and improve kdtrees. Guides on development, testing, and contribution are in the works!
Currently, particular contributions regarding pytests and documentation would be greatly appreciated. Guides and examples of usage are warmly welcomed.
There are three main branches for development and release. master is the current development build; release is the staging branch for releases; production is the current public release build.
Help and Support
Documentation
Documentation for kdtrees can be found here.
Issues and Questions
Issues and Questions should be posed to the issue tracker here.
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 kdtrees-0.1.7.tar.gz.
File metadata
- Download URL: kdtrees-0.1.7.tar.gz
- Upload date:
- Size: 14.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a5b8bb5f9dee0a656e234e7287083dd81d257053e923175037eceefd890ca46
|
|
| MD5 |
73bda6579270aabfba9e72a015a5a3dd
|
|
| BLAKE2b-256 |
db1cf295d7df875997eebd2daaf712675208b30cc09c6a462a5c70dfd383c557
|
File details
Details for the file kdtrees-0.1.7-py2.py3-none-any.whl.
File metadata
- Download URL: kdtrees-0.1.7-py2.py3-none-any.whl
- Upload date:
- Size: 17.8 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6533145903b27635c1221034021e22f510d3d02e61972a4e42b2a07d5078306e
|
|
| MD5 |
edd097f65d2093e0b29a71c22d36cae0
|
|
| BLAKE2b-256 |
f5f0bb7e4b263260b96e80d8a0edc86b17a8d90d31a15cf32535c142411def54
|