Skip to main content

pypi github docs tests coverage PyPi license DOI

pycax

pycax is a Python client for the Coordinated Assessments REST API. Make sure to review the StreamNet Terms of Use for these data, the StreamNet Data Policy and the citation information for database queries. pycax was developed by the Northwest Fisheries Science Center Math Bio Program by Elizabeth Holmes and Mari Williams.

NWFSC Math Bio CAX REST API clients:

Installation

From pypi

pip install pycax-client

From GitHub (development version)

pip install git+git://github.com/nwfsc-math-bio/pycax.git#egg=pycax-client

Documentation

The official documentation is hosted on GitHub Pages https://nwfsc-math-bio.github.io/pycax.

Library API

pycax is split up into modules for each of the groups of API methods.

  • hli - Get HLI tables.
  • datasets - Get metadata of tables
  • tables - The workhorse modules for querying tables

Sample analysis

Some Jupyter notebooks are in the notebooks directory.

Contributing

Fork and put in a pull request!

To install editable dev version from github for local development. System prerequisites: python3, conda. Note replace python3 with python if your Python installation points to 3+. requirements-dev.txt includes all the requirements needed for local development, testing and documentation building.

# fetch code
git clone git@github.com:nwfsc-math-bio/pycax.git
cd pycax
# install the requirements
python3 -m pip install -r requirements.txt
python3 -m pip install -r requirements-dev.txt
# After making changes, reinstall using
python3 -m pip install -e .
# test your installation
python3 -m pytest
# test and generate a coverage report
python3 -m pytest -rxs --cov=pycax --cov-report term-missing ./pycax
# make the documentation in docs/_build/html
cd docs # pycax/docs
make clean html codecov # linkcheck # linkcheck not working

Citation

Holmes, E. E and M. Williams. 2023. pycax: a Python client for the Coordinated Assessments data exchange REST API. vX.X.X. doi:10.5281/zenodo.7855729.

Make sure to include a citation for the Coordinated Assessments Partnership (CAP) data tables that you use. For details on citing CAP content see: https://www.streamnet.org/resources/citing-sn/

See CITATION file for bibtex version.

Credits

Thanks to the developers of pyobis package who created a package that was easy to use as a full template for a REST API client with tests, documentation files, and GitHub Actions and included the instructions and requirements for local development. The structure of pycax mimics pyobis structure but was adapted and changed for the CAX API. The pygbif package is similar (and seems to have influenced pyobis). pygbif source was used for reference and study though no code directly used. Some pygbif code may appear in pycax if pyobis used pygbif functions for reference. Notably the Sphinx documentation configuration files seem to originate from pygbif.


Disclaimer

This repository is a scientific product and is not official communication of the National Oceanic and Atmospheric Administration, or the United States Department of Commerce. All NOAA GitHub project content is provided on an ‘as is’ basis and the user assumes responsibility for its use. Any claims against the Department of Commerce or Department of Commerce bureaus stemming from the use of this GitHub project will be governed by all applicable Federal law. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by the Department of Commerce. The Department of Commerce seal and logo, or the seal and logo of a DOC bureau, shall not be used in any manner to imply endorsement of any commercial product or activity by DOC or the United States Government.

License

This content was created by U.S. Government employees as part of their official duties. This content is not subject to copyright in the United States (17 U.S.C. §105) and is in the public domain within the United States of America. Additionally, copyright is waived worldwide through the MIT License.

Metadata

Release files for pycax-client 1.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pycax-client 1.0.3
File Size Uploaded Provenance Actions
pycax-client-1.0.3.tar.gz 1.0 MB Without provenance Details for pycax-client-1.0.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for pycax-client 1.0.3
File Interpreter ABI Platform Actions
pycax_client-1.0.3-py3-none-any.whl Python 3 none any Details for pycax_client-1.0.3-py3-none-any.whl

Total release size: 1.1 MB

Release files / pycax-client-1.0.3.tar.gz

Download URL pycax-client-1.0.3.tar.gz
Size 1.0 MB
Tags Source
SHA-256 checksum
How to use checksums
878193d03f840617e3fdec0e9c6762b2f3edd9bd743be3d96cb9089eea242798
BLAKE2b-256 checksum
How to use checksums
33889038aabe95d7a6285442c62e6693f303c21e31241c313ad2bb65fd49dd84
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.16

Release files / pycax_client-1.0.3-py3-none-any.whl

Download URL pycax_client-1.0.3-py3-none-any.whl
Size 16.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
24332ce35961632ef6e6d5b170e8e30407bb3bae09a092e6e69fba664f90b874
BLAKE2b-256 checksum
How to use checksums
820101b84d8fc3468461a8e9c32ce68ec6ab0eb69c34f6f7a5a0bba602b72baa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.16

Security for pycax-client 1.0.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page