Now requires Python 3, but has not been tested beyond a simple Download -> PX file on disk -> Pandas Dataframe workflow on Python 3.6 and Pandas 0.20.2. Python 2 is not supported at the moment (PX file -> Pandas DataFrame works on commit 7669e5ccb5b8e0825d1044d5fe908b162904a523, current status in unknown).
Requisite packages:
pip install pandas
To fetch list of available PX files
import statsfi_px_api
px_info = statsfi_px_api.list_available_px(url="http://pxweb2.stat.fi/database/StatFin/StatFin_rap.csv")
To download PX Files to disk (default to current directory)
statsfi_px_api.download_px(px_info, target_dir=".", compressed=False, sleep=1)
NB: Setting compressed=True
is broken at 2017-07-12 due to stats.fi API not behaving as documented.
To read files into Pandas DataFrames
import px_reader
px_obj = px_reader.Px('a_px_file_on_filesystem.px')
pandas_dataframe = px_obj.pd_dataframe()
Notable feature is conversion to a Pandas DataFrame using MultiIndex, which supports multidimensional table object. Pandas calls this hierarchical indexing. Pandas has an extensive feature list. Thus you can use PC Axis files for data analysis, visualization and export to other data formats.
Installing scientific Python toolset can be a daunting task. One option is the Anaconda distribution. Otherwise Pandas installation may work with just pip install pandas
. This code is unsupported, but please create an issue if you run into problems.
This repository is a fork from https://github.com/jussiarpalahti/opendata which in turn is forked from https://github.com/statfi/opendata
Below is its license which applies here also
All code here is under the BSD license unless otherwise stated. Otherwise Mozilla public license (MPL) is used since it supports both open and proprietary development alike.