Data structures

Saddle is focused around the following five data structures:

  • a 1D array (Vec)
  • a 2D array (Mat)
  • an index (Index)
  • a 1D array with an index (Series)
  • a 2D array with an index for each dimensions (Frame)

Vec and Mat are stored as a contiguous array. Index is stored as a specialized hash map. Series is the product type of Index and Vec. Frame is stored as two Index and a sequence of Vec-s (column-wise).