PyGDX is a Python package for accessing data stored in GAMS Data eXchange (GDX) files. GDX is a proprietary, binary file format used by the General Algebraic Modelling System (GAMS); pyGDX uses the Python bindings for the GDX API.
Originally inspired by the similar package, also named py-gdx, by Geoff Leyland, this version makes use of xarray to provide labelled data structures which can be easily manipulated with NumPy for calculations and plotting.
Documentation is available at http://pygdx.readthedocs.org, built automatically from the contents of the Github repository.
PyGDX is provided under the MIT License (see
With the following GAMS program:
set s 'Animals' / a Aardvark b Blue whale c Chicken d Dingo e Elephant f Frog g Grasshopper /; set t 'Colours' / r Red o Orange y Yellow g Green b Blue i Indigo v Violet /; set u 'Countries' / CA Canada US United States CN China JP Japan /; parameter p(s,t,u) 'Counts of nationalistic, colourful animals' / set.s.set.t.set.u 1 /; execute_unload 'example.gdx'
p can be accessed via:
>>> import gdx >>> f = gdx.File('example.gdx') >>> f.p[:,'y','CA'] a 1 b 1 c 1 d 1 e 1 f 1 g 1 dtype: float64