polars
vaex
Our great sponsors
polars | vaex | |
---|---|---|
144 | 7 | |
26,043 | 8,173 | |
6.1% | 0.4% | |
10.0 | 6.0 | |
3 days ago | 18 days ago | |
Rust | Python | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
polars
-
Why Python's Integer Division Floors (2010)
This is because 0.1 is in actuality the floating point value value 0.1000000000000000055511151231257827021181583404541015625, and thus 1 divided by it is ever so slightly smaller than 10. Nevertheless, fpround(1 / fpround(1 / 10)) = 10 exactly.
I found out about this recently because in Polars I defined a // b for floats to be (a / b).floor(), which does return 10 for this computation. Since Python's correctly-rounded division is rather expensive, I chose to stick to this (more context: https://github.com/pola-rs/polars/issues/14596#issuecomment-...).
-
Polars
https://github.com/pola-rs/polars/releases/tag/py-0.19.0
-
Stuff I Learned during Hanukkah of Data 2023
That turned out to be related to pola-rs/polars#11912, and this linked comment provided a deceptively simple solution - use PARSE_DECLTYPES when creating the connection:
- Polars 0.20 Released
- Segunda linguagem
- Polars: Dataframes powered by a multithreaded query engine, written in Rust
- Summing columns in remote Parquet files using DuckDB
- Polars 0.34 is released. (A query engine focussing on DataFrame front ends)
vaex
-
preprocessing millions of records - how to speed up the processing
Try vaex, vaex, using lazy evaluation and parallel calculations, you should be fine.
-
High performance (for the consumer) time series storage?
I'd recommend QuestDB. Worked with it multiple times for different algorithmic trading needs and it didn't disappoint. If you want to load data fast, I'd recommend this Python library.
-
Python Pandas vs Dask for csv file reading
How about vaex?
- Polars: Lightning-fast DataFrame library for Rust and Python
-
For stocks, what historical data do you store and how do you store it?
You might find vaex (https://github.com/vaexio/vaex) interesting if you work with HDF5.
- I wrote one of the fastest DataFrame libraries
-
A Hybrid Apache Arrow/Numpy DataFrame with Vaex Version 4.0
My guess is that should be possible, feel free to hop onto https://github.com/vaexio/vaex/discussions !
What are some alternatives?
modin - Modin: Scale your Pandas workflows by changing a single line of code
data.table - R's data.table package extends data.frame:
arrow-datafusion - Apache DataFusion SQL Query Engine
minimal-pandas-api-for-polars - pip install minimal-pandas-api-for-polars
DataFrames.jl - In-memory tabular data in Julia
rust-dataframe - A Rust DataFrame implementation, built on Apache Arrow
datatable - A Python package for manipulating 2-dimensional tabular data structures
visidata - A terminal spreadsheet multitool for discovering and arranging data
Apache Arrow - Apache Arrow is a multi-language toolbox for accelerated data interchange and in-memory processing
umap - Uniform Manifold Approximation and Projection
db-benchmark - reproducible benchmark of database-like ops