Welcome to hirola!

MIT licensePyPIDocumentationSource codeBug reportsSupport

A vectorized hash table written in C for fast set/dict like operations on NumPy arrays.

Hirola provides fast indexing and de-duplication of keys. It can be used as an extension of numpy.unique() and a very light (20-30KB download size) and much faster alternative to pandas.Categorical(). Hirola obtains its speed in the same way that NumPy does – vectorising, translating into C and imposing the following constraints:

  • Keys must all be of the same predetermined type and size.

  • The maximum size of a table must be chosen in advance and managed explicitly.

  • To get any performance boost, operations should be done in bulk.

  • Elements can not be removed.

Installation

Install Hirola with pip:

pip install hirola