An experimental package to convert ods (e.g. LibreOfiice calc) in either Julia dictionaries or DataFrames, using PyCall and the Python ezodf module.
https://github.com/sylvaticus/OdsIO.jl
The ods2julia is complete (although not optimized and not fully tested), the opposite direction is in program for February 2017.
Functions provided:
ods2dics(filename;sheetsNames=[],sheetsPos=[],ranges=[])
ods2dfs(filename;sheetsNames=[],sheetsPos=[],ranges=[])
sheetsNames (optional) are a list of sheet names from which to import data
sheetsPos (optional) aree a list of sheet positions (starting from 1) from which to import data
sheetsNames and sheetsPos can not be given together
ranges (optional) is a list of pair of touples defining the ranges in each sheet to import ((tlr,trc),(brr,brc))
The functions return a list of dictionaries or DataFrames indexed by position or names (this is the reason of the s in the function name)
The following functions are provided for convenience:
ods2dic(filename; sheetName=Null,sheetPos=Null,range=())
ods2df(filename;sheetName=Null,sheetPos=Null,range=())
Where sheetName, sheetPos and range are scalars and return directly a single dic/df. If none of sheetName or sheetPos are provided the function return the data of the first sheet.
This is my first package and I am pretty new to the Julia language as well, so I welcome all your (constructive) comments.
/Antonello