This module represents external libraries that define “array-like” types so that users can choose an output format.

The uproot.interpretation.library.NumPy library always works (NumPy is Uproot’s only strict dependency) and outputs NumPy arrays for single arrays and dict/tuple/list as groups. Objects and jagged arrays are not efficiently represented, but it provides a zero-dependency least common denominator.

The uproot.interpretation.library.Awkward library is the default and depends on Awkward Array (awkward). It is usually the best option, as it was designed for Uproot.

The uproot.interpretation.library.Pandas library outputs pandas.Series for single arrays and pandas.DataFrame as groups. Objects are not efficiently represented, but some jagged arrays are encoded as pandas.MultiIndex.

Lazy arrays (uproot.behaviors.TBranch.lazy) can only use the uproot.interpretation.library.Awkward library.