Out-of-Core hybrid Apache Arrow/NumPy DataFrame for Python, ML, visualization and exploration of big tabular data at a billion rows per second 🚀
Vaex is a high performance Python library for lazy Out-of-Core DataFrames
(similar to Pandas), to visualize and explore big tabular datasets. It
calculates statistics such as mean, sum, count, standard deviation etc, on an
N-dimensional grid for more than a billion (10^9
) samples/rows per
second. Visualization is done using histograms, density plots and 3d
volume rendering, allowing interactive exploration of big data. Vaex uses
memory mapping, zero memory copy policy and lazy computations for best
performance (no memory wasted).
With pip:
$ pip install vaex
Or conda:
$ conda install -c conda-forge vaex
For more details, see the documentation
HDF5 and Apache Arrow supported.
Read the documentation on how to efficiently convert your data from CSV files, Pandas DataFrames, or other sources.
Lazy streaming from S3 supported in combination with memory mapping.
Don’t waste memory or time with feature engineering, we (lazily) transform your data when needed.
Filtering and evaluating expressions will not waste memory by making copies; the data is kept untouched on disk, and will be streamed only when needed. Delay the time before you need a cluster.
Vaex implements parallelized, highly performant groupby
operations, especially when using categories (>1 billion/second).
Vaex doesn’t copy/materialize the ‘right’ table when joining, saving gigabytes of memory. With subsecond joining on a billion rows, it’s pretty fast!
See contributing page.
Join the discussion in our Slack channel!
Articles
Watch our more recent talks:
Contact us for data science solutions, training, or enterprise support at https://vaex.io/