Reads in an .ods/.fods file and returns a pandas DataFrame object (+ parse cell formatting)
Go to file
fatz d8d71f610d Merge branch 'master' of https://github.com/iuvbio/pandas_ods_reader 2019-06-08 14:21:34 +02:00
pandas_ods_reader Merge branch 'master' of https://github.com/iuvbio/pandas_ods_reader 2019-06-08 14:21:34 +02:00
.gitignore update .gitignore 2019-01-31 23:46:28 +01:00
LICENSE.txt add license and manifest 2019-01-28 21:22:40 +01:00
MANIFEST.in add license and manifest 2019-01-28 21:22:40 +01:00
README.md fix readme 2019-05-19 14:41:03 +02:00
setup.cfg add setup.cfg 2019-01-31 23:58:04 +01:00
setup.py implement overwriting headers 2019-01-31 23:37:53 +01:00

README.md

pandas_ods_reader

Provides a function to read in an ODS file and returns a pandas DataFrame.

It uses ezodf to read in the ods file. If a range is specified in the sheet to be imported, it seems that ezodf imports empty cells as well. Therefore, completely empty rows and columns are dropped from the DataFrame, before it is returned. Only trailing empty rows and columns are dropped.

Dependencies

  • ezodf
  • lxml
  • pandas

Installation

pip install pandas_ods_reader

Usage

from pandas_ods_reader import read_ods

path = "path/to/file.ods"

# load a sheet based on its index (1 based)
sheet_idx = 1
df = read_ods(path, sheet_idx)

# load a sheet based on its name
sheet_name = "sheet1"
df = read_ods(path, sheet_name)

# load a file that does not contain a header row
# if no columns are provided, they will be numbered
df = read_ods(path, 1, headers=False)

# load a file and provide custom column names
# if headers is True (the default), the header row will be overwritten
df = read_ods(path, 1, columns=["A", "B", "C"])