pybeach

pybeach: A Python package for extracting the location of dune toes on beach profile transects - Published in JOSS (2019)

https://github.com/tomasbeuzen/pybeach

Science Score: 93.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 5 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: joss.theoj.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Scientific Fields

Mathematics Computer Science - 84% confidence
Artificial Intelligence and Machine Learning Computer Science - 83% confidence
Last synced: 4 months ago · JSON representation

Repository

A Python package for locating the dune toe on cross-shore beach profile transects.

Basic Info
  • Host: GitHub
  • Owner: TomasBeuzen
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: master
  • Size: 10.3 MB
Statistics
  • Stars: 22
  • Watchers: 6
  • Forks: 11
  • Open Issues: 8
  • Releases: 2
Created about 6 years ago · Last pushed over 1 year ago
Metadata Files
Readme License

README.md

Project Status: Active – The project has reached a stable, usable state and is being actively developed. License: MIT Documentation Status codecov status PyPI version build

As of 2021 this repo is currently not actively maintained. I do hope to make time for it in the future as there's lots of room for improvement - PRs welcome any time.

pybeach: A Python package for locating the dune toe on cross-shore beach profile transects.

pybeach-example

Background

pybeach is a Python package for identifying dune toes on 2D beach profile transects. It includes the following methods: - Machine learning; - Maximum curvature (Stockdon et al, 2007); - Relative relief (Wernette et al, 2016); and, - Perpendicular distance.

In addition, pybeach contains methods for identifying the shoreline position and dune crest position on 2D beach profile transects. See the pybeach paper for more details about pybeach.

Installation

pip install pybeach

Usage

```python from pybeach.beach import Profile

example data

x = np.arange(0, 80, 0.5) z = np.concatenate((np.linspace(4, 5, 40), np.linspace(5, 2, 10), np.linspace(2, 0, 91)[1:], np.linspace(0, -1, 20)))

instantiate

p = Profile(x, z)

predict dune toe, dune crest, shoreline location

toeml, probml = p.predictdunetoeml('waveembayedclf') # predict toe using machine learning model toemc = p.predictdunetoemc() # predict toe using maximum curvature method (Stockdon et al, 2007) toerr = p.predictdunetoerr() # predict toe using relative relief method (Wernette et al, 2016) toepd = p.predictdunetoepd() # predict toe using perpendicular distance method crest = p.predictdunecrest() # predict dune crest shoreline = p.predict_shoreline() # predict shoreline ```

See the example notebook for more details.

Documentation

Read the pybeach documentation here.

Dependencies

A list of pybeach dependencies can be found in pyproject.toml. Currently, pybeach depends on the following: - python = "^3.7" - numpy = "1.17.2" - scipy = "1.3.1" - pandas = "0.25.1" - scikit-learn = "0.21.2" - joblib = "0.13.2"

Questions, Comments, Suggestions

Do you have a question that needs answering? Have you found an issue with the code and need to get it fixed? Or perhaps you're looking to contribute to the code and have ideas for how it could be improved. In all cases, please see the Issues page.

References

Stockdon, H. F., Sallenger Jr, A. H., Holman, R. A., & Howd, P. A. (2007). A simple model for the spatially-variable coastal response to hurricanes. Marine Geology, 238, 1-20. https://doi.org/10.1016/j.margeo.2006.11.004

Wernette, P., Houser, C., & Bishop, M. P. (2016). An automated approach for extracting Barrier Island morphology from digital elevation models. Geomorphology, 262, 1-7. https://doi.org/10.1016/j.geomorph.2016.02.024

Owner

  • Name: Tomas Beuzen
  • Login: TomasBeuzen
  • Kind: user
  • Location: Sydney, Australia
  • Company: Solar Analytics

#r #python #datascience #climatescience #coastalengineering

JOSS Publication

pybeach: A Python package for extracting the location of dune toes on beach profile transects
Published
December 20, 2019
Volume 4, Issue 44, Page 1890
Authors
Tomas Beuzen ORCID
Department of Statistics, University of British Columbia, Vancouver, Canada
Editor
Katy Barnhart ORCID
Tags
coastal morphology dunes machine learning

GitHub Events

Total
  • Watch event: 2
  • Issue comment event: 1
Last Year
  • Watch event: 2
  • Issue comment event: 1

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 104
  • Total Committers: 2
  • Avg Commits per committer: 52.0
  • Development Distribution Score (DDS): 0.01
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Tomas Beuzen t****n@g****m 103
Arfon Smith a****n 1

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 13
  • Total pull requests: 7
  • Average time to close issues: 2 months
  • Average time to close pull requests: about 1 hour
  • Total issue authors: 9
  • Total pull request authors: 4
  • Average comments per issue: 3.23
  • Average comments per pull request: 0.43
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 3
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 3.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • csherwood-usgs (5)
  • TomasBeuzen (1)
  • FlorisCalkoen (1)
  • ontherocks123 (1)
  • chrisleaman (1)
  • benjaminh (1)
  • conlin-matt (1)
  • kbarnhart (1)
  • pwernette (1)
Pull Request Authors
  • TomasBeuzen (2)
  • dependabot[bot] (2)
  • anellenson (2)
  • arfon (1)
Top Labels
Issue Labels
enhancement (1) improvement (1)
Pull Request Labels
dependencies (2)

Packages

  • Total packages: 2
  • Total downloads: unknown
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 4
proxy.golang.org: github.com/tomasbeuzen/pybeach
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 4 months ago
proxy.golang.org: github.com/TomasBeuzen/pybeach
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 4 months ago

Dependencies

docs/requirements.txt pypi
  • joblib ==0.13.2
  • numpy ==1.17.2
  • pandas ==0.25.1
  • pytest ==5.2.1
  • scikit-learn ==0.21.2
  • scipy ==1.3.1
poetry.lock pypi
  • alabaster 0.7.12 develop
  • appdirs 1.4.4 develop
  • atomicwrites 1.4.0 develop
  • attrs 21.2.0 develop
  • babel 2.9.1 develop
  • black 21.6b0 develop
  • certifi 2021.5.30 develop
  • chardet 4.0.0 develop
  • click 8.0.1 develop
  • colorama 0.4.4 develop
  • coverage 5.5 develop
  • docutils 0.17.1 develop
  • flake8 3.9.2 develop
  • idna 2.10 develop
  • imagesize 1.2.0 develop
  • iniconfig 1.1.1 develop
  • jinja2 3.0.1 develop
  • markupsafe 2.0.1 develop
  • mccabe 0.6.1 develop
  • mypy-extensions 0.4.3 develop
  • packaging 21.0 develop
  • pathspec 0.8.1 develop
  • pluggy 0.13.1 develop
  • py 1.10.0 develop
  • pycodestyle 2.7.0 develop
  • pyflakes 2.3.1 develop
  • pygments 2.9.0 develop
  • pyparsing 2.4.7 develop
  • pytest 6.2.4 develop
  • pytest-cov 2.12.1 develop
  • regex 2021.7.6 develop
  • requests 2.25.1 develop
  • snowballstemmer 2.1.0 develop
  • sphinx 4.1.0 develop
  • sphinxcontrib-applehelp 1.0.2 develop
  • sphinxcontrib-devhelp 1.0.2 develop
  • sphinxcontrib-htmlhelp 2.0.0 develop
  • sphinxcontrib-jsmath 1.0.1 develop
  • sphinxcontrib-qthelp 1.0.3 develop
  • sphinxcontrib-serializinghtml 1.1.5 develop
  • toml 0.10.2 develop
  • urllib3 1.26.6 develop
  • joblib 1.0.1
  • numpy 1.21.0
  • pandas 1.3.0
  • python-dateutil 2.8.1
  • pytz 2021.1
  • scikit-learn 0.24.2
  • scipy 1.6.1
  • six 1.16.0
  • threadpoolctl 2.2.0
pyproject.toml pypi
  • Sphinx ^4.1.0 develop
  • black ^21.6b0 develop
  • flake8 ^3.9.2 develop
  • pytest ^6.2.4 develop
  • pytest-cov ^2.12.1 develop
  • joblib ^1.0.1
  • pandas ^1.3.0
  • python ^3.8
  • scikit-learn ^0.24.2
.github/workflows/build.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v1 composite
  • codecov/codecov-action v1 composite