Signature functions

Import data into Python

This library provides one application programming interface to read data from one of the following data sources:

  • physical file
  • memory file
  • SQLAlchemy table
  • Django Model
  • Python data structures: dictionary, records and array

and to transform them into one of the data structures:

  • two dimensional array
  • a dictionary of one dimensional arrays
  • a list of dictionaries
  • a dictionary of two dimensional arrays
  • a Sheet
  • a Book

Four data access functions

It is believed that once a Python developer could easily operate on list, dictionary and various mixture of both. This library provides four module level functions to help you obtain excel data in those formats. Please refer to “A list of module level functions”, the first three functions operates on any one sheet from an excel book and the fourth one returns all data in all sheets in an excel book.

A list of module level functions
Functions Name Python name
get_array() two dimensional array a list of lists
get_dict() a dictionary of one dimensional arrays an ordered dictionary of lists
get_records() a list of dictionaries a list of dictionaries
get_book_dict() a dictionary of two dimensional arrays a dictionary of lists of lists

See also:

The following two variants of the data access function use generator and should work well with big data files

A list of variant functions
Functions Name Python name
iget_array()
a memory efficient two dimensional
array
a generator of a list of lists
iget_records() a memory efficient list list of dictionaries a generator of a list of dictionaries

However, you will need to call free_resource() to make sure file handles are closed.

Two pyexcel functions

In cases where the excel data needs custom manipulations, a pyexcel user got a few choices: one is to use Sheet and Book, the other is to look for more sophisticated ones:

  • Pandas, for numerical analysis
  • Do-it-yourself
Functions Returns
get_sheet() Sheet
get_book() Book

For all six functions, you can pass on the same command parameters while the return value is what the function says.

Export data from Python

This library provides one application programming interface to transform them into one of the data structures:

  • two dimensional array
  • a (ordered) dictionary of one dimensional arrays
  • a list of dictionaries
  • a dictionary of two dimensional arrays
  • a Sheet
  • a Book

and write to one of the following data sources:

  • physical file
  • memory file
  • SQLAlchemy table
  • Django Model
  • Python data structures: dictionary, records and array

Here are the two functions:

Functions Description
save_as() Works well with single sheet file
isave_as() Works well with big data files
save_book_as()
Works with multiple sheet file
and big data files
isave_book_as()
Works with multiple sheet file
and big data files

If you would only use these two functions to do format transcoding, you may enjoy a speed boost using isave_as() and isave_book_as(), because they use yield keyword and minimize memory footprint. However, you will need to call free_resource() to make sure file handles are closed. And save_as() and save_book_as() reads all data into memory and will make all rows the same width.

See also:

Data transportation/transcoding

Based the capability of this library, it is capable of transporting your data in between any of these data sources:

  • physical file
  • memory file
  • SQLAlchemy table
  • Django Model
  • Python data structures: dictionary, records and array

See also: