gdx-pandas is a python package to translate between gdx (GAMS data) and pandas
Project description
gdx-pandas
gdx-pandas is a python package to translate between gdx (GAMS data) and pandas.
Install | Documentation | Uninstall
Install
Preliminaries
-
Python 3.11 or higher (exact compatibility might depend on which GAMS version you are using)
-
Install GAMS
-
Put the GAMS directory in your
PATHand/or assign it to theGAMS_DIRenvironment variable -
GAMS Python bindings — choose one:
Recommended. Install the
gamsapithat matches your installed GAMS version:# xx.y.z corresponds to your GAMS version pip install gamsapi[transfer]==xx.y.z
Installing
gamsapithis way also enables the optional, much-fastergams.transferI/O engine for large files (see Configure below).Legacy. Use the standalone
gdxccpackage from PyPI by installinggdxpdswith thelegacyextra (see below).gdxccis older and is not version-matched to your GAMS install, but the SWIG-bound C ABI is stable enough that it generally works.
Get the Latest Package
# Recommended (use with the gamsapi install above):
pip install gdxpds
# Legacy (also installs gdxcc; use if you skipped gamsapi):
pip install gdxpds[legacy]
Versions are listed at pypi and https://github.com/NatLabRockies/gdx-pandas/releases.
Configure
gdxpds needs to know where GAMS is, and optionally which I/O engine to use. Set either once via an environment variable, or per call with the gams_dir= / engine= keywords (also --gams_dir / --engine on the CLIs):
export GAMS_DIR=/path/to/gams # otherwise auto-discovered
export GDXPDS_ENGINE=gdxcc # default: gams_transfer when usable (much faster on large files), else gdxcc
See Configuration in the documentation for the full keyword / environment-variable / CLI matrix and the speed trade-offs.
Verify installation
After installing gdxpds and a matching gamsapi, verify your environment
end-to-end with:
gdxpds test
For a quick environment check without running the full round-trip, use
gdxpds info — it prints Python, bindings, the resolved GAMS_DIR (and
which discovery branch produced it), and any import-time load error. Useful
for bug reports. gdxpds --version prints just the version.
Expected output for gdxpds info, which is also printed at the top of the gdxpds test output:
gdxpds info
-----------
gdxpds: <version>
Python: <python version> (<platform>)
Bindings:
gams.core.gdx: [gamsapi <version> | not importable]
gdxcc: [gdxcc <version> | not importable]
gams.transfer: [gamsapi <version> | not importable]
selected: [gams.core.gdx | gdxcc]
bound dir: <your GAMS directory>
gams.transfer usable: [yes | no]
Default engine: [gams_transfer | gdxcc]
GAMS_DIR: <your GAMS directory>
source: [GAMS_DIR env var | GAMSDIR env var | <discovered location> | explicit override | cached]
Example gdxpds test output that follows the info preamble:
Verifying gdxpds installation...
[OK] GAMS install found at <your GAMS directory>
[OK] GDX bindings loaded: gams.core.gdx
[OK] Read embedded sample.gdx (...)
[OK] Round-trip write->read preserves all symbols
[OK] Special values (+Inf, -Inf, NaN) survive round-trip
PASSED: gdxpds installation verified.
Development tests
To run the development test suite, clone the repo and run:
pytest tests
If the tests fail due to permission IOErrors, apply chmod g+x and chmod a+x
to the tests folder.
Uninstall
pip uninstall gdxpds
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gdxpds-3.0.0.tar.gz.
File metadata
- Download URL: gdxpds-3.0.0.tar.gz
- Upload date:
- Size: 76.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dbeca8c4d1af1313ce7c13951e96619a8e95f3d71871b0a5d0bff907d496bbe8
|
|
| MD5 |
253d84d351d2004f9124bee2f616697a
|
|
| BLAKE2b-256 |
ea8136fce5c8d12fb30fe56fcc03c229c1a45333e3e1247f396fec0e424259a4
|
Provenance
The following attestation bundles were made for gdxpds-3.0.0.tar.gz:
Publisher:
release-pypi.yml on NatLabRockies/gdx-pandas
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gdxpds-3.0.0.tar.gz -
Subject digest:
dbeca8c4d1af1313ce7c13951e96619a8e95f3d71871b0a5d0bff907d496bbe8 - Sigstore transparency entry: 1635490685
- Sigstore integration time:
-
Permalink:
NatLabRockies/gdx-pandas@d43977b92b9dd00f0852f9e21f8a77b27049939d -
Branch / Tag:
refs/tags/v3.0.0 - Owner: https://github.com/NatLabRockies
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-pypi.yml@d43977b92b9dd00f0852f9e21f8a77b27049939d -
Trigger Event:
release
-
Statement type:
File details
Details for the file gdxpds-3.0.0-py3-none-any.whl.
File metadata
- Download URL: gdxpds-3.0.0-py3-none-any.whl
- Upload date:
- Size: 56.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fa43d15c929e8021839c97826d5ef20a31847e18994c3d268b593957bdc91d11
|
|
| MD5 |
6611d3377041aac5ad136e67c2d536d3
|
|
| BLAKE2b-256 |
7e3913b387472f11f001964fbe020710bcefca292f3f030368821c7749fb7dae
|
Provenance
The following attestation bundles were made for gdxpds-3.0.0-py3-none-any.whl:
Publisher:
release-pypi.yml on NatLabRockies/gdx-pandas
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gdxpds-3.0.0-py3-none-any.whl -
Subject digest:
fa43d15c929e8021839c97826d5ef20a31847e18994c3d268b593957bdc91d11 - Sigstore transparency entry: 1635490691
- Sigstore integration time:
-
Permalink:
NatLabRockies/gdx-pandas@d43977b92b9dd00f0852f9e21f8a77b27049939d -
Branch / Tag:
refs/tags/v3.0.0 - Owner: https://github.com/NatLabRockies
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-pypi.yml@d43977b92b9dd00f0852f9e21f8a77b27049939d -
Trigger Event:
release
-
Statement type: