pycax
Python client for the CAX API. Holmes, E. E and M. Williams. 2023. pycax: a Python client for the Coordinated Assessments data exchange REST API
Science Score: 51.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 4 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
✓Committers with academic emails
1 of 1 committers (100.0%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.6%) to scientific vocabulary
Keywords
Repository
Python client for the CAX API. Holmes, E. E and M. Williams. 2023. pycax: a Python client for the Coordinated Assessments data exchange REST API
Basic Info
- Host: GitHub
- Owner: noaa-nwfsc
- License: other
- Language: Jupyter Notebook
- Default Branch: main
- Homepage: https://noaa-nwfsc.github.io/pycax/
- Size: 5.96 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 2
- Releases: 5
Topics
Metadata Files
README.md
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:
- Python client: pycax on GitHub at noaa-nwfsc/pycax
- R client: rCAX on GitHub at nwfsc-math-bio/rCAX
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.
Installation
From pypi
bash
pip install pycax-client
From GitHub (development version)
bash
pip install git+git://github.com/noaa-nwfsc/pycax.git#egg=pycax-client
Documentation
The official documentation is hosted on GitHub Pages https://noaa-nwfsc.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 tablestables- 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.
```bash
fetch code
git clone git@github.com:noaa-nwfsc/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 ```
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.
Contributors
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.
Owner
- Name: Northwest Fisheries Science Center
- Login: noaa-nwfsc
- Kind: organization
- Repositories: 1
- Profile: https://github.com/noaa-nwfsc
NWFSC's Repositories
Citation (CITATION)
How to acknowledge use of pycax in a publication or report. In an acknowledgement,
This work made use of pycax: a Python REST API client for the the Coordinated Assessments data exchange REST API. DOI: 10.5281/zenodo.7855729
or as a 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/
BibTeX entries for the above citations are:
@misc{pycax,
title={pycax: a Python client for the Coordinated Assessments data exchange REST API},
url={https://nwfsc-math-bio.github.io/pycax/},
author={
Elizabeth Holmes and
Mari Williams
},
institution = "NOAA Fisheries, Northwest Fisheries Science Center, Math Bio Program",
year={2023},
doi = {10.5281/zenodo.7855729}
}
@misc{
title = "Coordinated Assessments Partnership (CAP) fish high-level indicators (HLIs)",
url = "https://www.streamnet.org/home/data-maps/fish-hlis/",
note = "For details on citing StreamNet content see: https://www.streamnet.org/resources/citing-sn/")
}
GitHub Events
Total
Last Year
Committers
Last synced: almost 2 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| Eli Holmes | e****s@n****v | 70 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: about 1 year ago
All Time
- Total issues: 2
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 1
- Total pull request authors: 0
- Average comments per issue: 0.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0