Tabular data container and associated convenience routines in Python
Project description
Tabular data can be easily represented in Python using the language’s native objects – e.g. by lists of tuples representing the records of the data set. Though easy to create, these kind of representations typically do not enable important tabular data manipulations, like efficient column selection, matrix mathematics, or spreadsheet-style operations.
Tabular is a package of Python modules for working with tabular data. Its main object is the tabarray class, a data structure for holding and manipulating tabular data. By putting data into a tabarray object, you’ll get a representation of the data that is more flexible and powerful than a native Python representation. More specifically, tabarray provides:
ultra-fast filtering, selection, and numerical analysis methods, using convenient Matlab-style matrix operation syntax
spreadsheet-style operations, including row & column operations, ‘sort’, ‘replace’, ‘aggregate’, ‘pivot’, and ‘join’
flexible load and save methods for a variety of file formats, including separated values (CSV), binary, HTML, and a hierarchical data format
support for hierarchical groupings of columns
Note to NumPy Users: The tabarray object is based on the record array object from the Numerical Python package (NumPy), and the Tabular package is built to interface well with NumPy in general. In particular, users of NumPy can get many of the benefits of Tabular, e.g. the spreadsheet-style operations, without having replace their usual NumPy objects with tabarrays, since most of the useful functional pieces of Tabular are written to work directly on NumPy ndarrays and record arrays.
Tabular is in beta! More to come. You will need NumPy 1.3.
See documentation at http://www.parsemydata.com/tabular.
You can also clone our mercurial (hg) repository from bitbucket: http://bitbucket.org/elaine/tabular/.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.