qutePandas
A pandas-like library for kdb+/q powered by PyKX.
While Pandas is the gold standard for data manipulation in Python, it often struggles with memory overhead and execution speed when handling multi-gigabyte datasets or complex time-series operations. qutePandas addresses these limitations by offloading compute-intensive operations to the kdb+/q engine, leveraging its columnar architecture and high-performance vector processing. By providing a familiar pandas-like API, it allows Python engineers to achieve kdb+ speeds without leaving the Python ecosystem.
Installation
pip install qutePandas
Note: Requires a kdb+ license and the PyKX library.
Quick Start
import qutePandas as qpd
import pandas as pd
# Convert a pandas DataFrame to a qutePandas table
df = pd.DataFrame({
"time": pd.date_range("2023-01-01", periods=1000000, freq="ms"),
"price": pd.Series(range(1000000))
})
q_table = qpd.DataFrame(df)
# Perform high-performance aggregation
# Computation happens in kdb+
res = qpd.apply(q_table, "sum", axis=0, return_type="p")
print(res)
Documentation
Full documentation, including API reference and performance benchmarks, is available at: https://ishapatro.github.io/qutePandas/
GitHub
The source code for this project is available on GitHub at: https://github.com/ishapatro/qutePandas
Contributing
Contributions are welcome! Please read our CONTRIBUTING.md for more information.
License
MIT License
Author
Created by Isha Patro
Metadata
Release files for qutePandas 1.1.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| qutepandas-1.1.4.tar.gz | 19.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| qutepandas-1.1.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 42.1 kB
Release files / qutepandas-1.1.4.tar.gz
| Download URL | qutepandas-1.1.4.tar.gz |
|---|---|
| Size | 19.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3177998ff2ea61a6dff707205083909ba4be1ebd38d1886386cfe3164a55bdf5
|
|
BLAKE2b-256 checksum How to use checksums |
a4df8fe2c1c39b548cb166f533fe77c553cfce84a5f5db47b763b2936d30a5fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.7
|
Release files / qutepandas-1.1.4-py3-none-any.whl
| Download URL | qutepandas-1.1.4-py3-none-any.whl |
|---|---|
| Size | 23.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ff18a27431f24ebe5185e74085a29ca4317ff2970ddd438be385ade49dded708
|
|
BLAKE2b-256 checksum How to use checksums |
d9797b2d54cae3981d0899effd11a2d1272e33d0283833c67433bd64268e8ca4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.7
|