Skip to main content

Python package to handle data gathered from biologgers (GPS, TDR, AXY) attached to central-place foraging seabirds. The idea is to make movement ecology data a bit easier to process.

Project description

cpforager text logo with colors


github stars github forks license


Are you a scientist involved in movement ecology working with biologging data collected from central-place foraging seabirds? cpforager is a Python package designed to help you manipulate, process, analyse and visualise the biologging datasets with ease.


The main objectives of cpforager are :

  1. Efficiently handle large-scale biologging datasets, including high-resolution sensor data (e.g. accelerometers).
  2. Provide a modular and extensible architecture, allowing users to tailor the code to their specific research needs.
  3. Facilitate a smooth transition to Python for movement ecology researchers familiar with other languages (e.g. R).

cpforager package supports various biologging sensor types commonly used in movement ecology and provides the following core classes:

  • GPS : for handling position recordings.
  • TDR : for handling pressure recordings.
  • AXY : for handling tri-axial acceleration recordings at high resolution combined with lower resolution position and pressure recordings.
  • GPS_TDR : for handling position and pressure recordings.

cpforager also allows to deal with a list of sensors using the following classes:

  • GPS_Collection : for working with datasets composed of multiple GPS loggers.
  • TDR_Collection : for working with datasets composed of multiple TDR loggers.
  • AXY_Collection : for working with datasets composed of multiple AXY loggers.
  • GPS_TDR_Collection : for working with datasets composed of multiple GPS_TDR loggers.

Each class automatically enhances raw data but also computes key features specific to each biologger (e.g. trip segmentation for GPS, dive segmentation for TDR, ODBA calculation for AXY). They are also accompanied with methods for data processing and visualisation.


cpforager logo with colors

Installation

  1. Fork this repository and then clone it on your local machine :
git clone https://github.com/AdrienBrunel/seabird-movement-cpf.git
  1. Create a conda environment using the environment.yml file :
conda env create --name seabird-movement-cpf --file environment.yml
  1. Open any Python script in /tests/ folder and start running line by line to check that everything is working.

  2. Load your raw data in the data/ folder, create your own script and enjoy !


Documentation

The documentation of cpforager is automatically generated using Sphinx and can be found here.


User guide

The Python scripts in the /tests/ folder illustrate how the GPS, TDR, AXY, GPS_TDR, GPS_Collection, TDR_Collection, AXY_Collection and GPS_TDR_Collection classes can be used to fully benefit the users. Results of the scripts are also found in the /tests/ folder. For more details, you can browse the package documentation.


Future developments

  • make classes' methods available in documentation.
  • uniformise types of arguments/attributes in function arguments and accordingly in documentation.
  • add a proper zero offset correction inside TDR class (according to the scientific consensus). See scikit-diveMove.
  • hmmlearn for adding an estimation method of seabird's behaviour (foraging, searching, resting, traveling, etc.).
  • create first Github release / version 1.0.
  • build Python package Python package building.
  • draft for Applications in Methods in Ecology and Evolution.

Infos

  • Python version used is 3.13.3.
  • OS used is Ubuntu 20.04.
  • The graphic design of the logos was done by Lisa Brunel.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cpforager-1.0.0.tar.gz (62.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cpforager-1.0.0-py3-none-any.whl (77.3 kB view details)

Uploaded Python 3

File details

Details for the file cpforager-1.0.0.tar.gz.

File metadata

  • Download URL: cpforager-1.0.0.tar.gz
  • Upload date:
  • Size: 62.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for cpforager-1.0.0.tar.gz
Algorithm Hash digest
SHA256 4c1cc80ff75f750ca5911e6230dcfb1f0cd945fd007bf6696d34d0357f42beb3
MD5 7660d2e4c580673ca67ec11d3c9a349a
BLAKE2b-256 66e800bd1d45c6704a04ad87097301c7d39c3c4c70a40e673798a5967f4593ec

See more details on using hashes here.

File details

Details for the file cpforager-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: cpforager-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 77.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for cpforager-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0ad7759dea31811850fbb3e72e62e8dddeb49837969a00077a01b87f187f30f1
MD5 734b34629a1bbd3a5dd1aa1d4c0975a0
BLAKE2b-256 9cb6b15650358ec840b157bd2e7947155e127c1424619b41142edad37aa4bbef

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page