aeon_mecha

Project Aeon's main library for interfacing with acquired data. Contains modules for raw data file io, data querying, data processing, data qc, database ingestion, and building computational data pipelines.

https://github.com/sainsburywellcomecentre/aeon_mecha

Science Score: 75.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
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
    Organization sainsburywellcomecentre has institutional domain (www.ucl.ac.uk)
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.9%) to scientific vocabulary

Keywords

python
Last synced: 6 months ago · JSON representation ·

Repository

Project Aeon's main library for interfacing with acquired data. Contains modules for raw data file io, data querying, data processing, data qc, database ingestion, and building computational data pipelines.

Basic Info
  • Host: GitHub
  • Owner: SainsburyWellcomeCentre
  • License: bsd-3-clause
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 21.7 MB
Statistics
  • Stars: 8
  • Watchers: 11
  • Forks: 7
  • Open Issues: 57
  • Releases: 2
Topics
python
Created about 5 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License Citation

README.md

aeon_mecha

aeon_mecha_env_build_and_tests aeon_mecha_tests_code_coverage

Project Aeon's main repository for manipulating acquired data. Includes modules for loading raw data, performing quality control on raw data, processing raw data, and ingesting processed data into a DataJoint MySQL database.

Set-up Instructions

The various set-up tools mentioned below do some combination of python version, environment, package, and package dependency management. For basic information on the differences between these tools, see this blog post.

Remote set-up on SWC's HPC

Prereqs

  1. Ssh into the HPC and clone this repository to your home directory. ssh <your_SWC_username>@ssh.swc.ucl.ac.uk mkdir ~/ProjectAeon cd ~/ProjectAeon git clone https://github.com/SainsburyWellcomeCentre/aeon_mecha cd aeon_mecha

Set-up

Ensure you stay in the ~/ProjectAeon/aeon_mecha directory for the rest of the set-up instructions, regardless of which set-up procedure you follow below.

Option 1: miniconda (python distribution) and conda (python version manager, environment manager, package manager, and package dependency manager)

  • Note: mamba, a faster alternative to conda, is now installed as a module on the HPC, so the above instructions can be followed using 'mamba' instead of 'conda' if you prefer.

Option 2: pip (python package manager) and venv (python environment manager)

Local set-up

Prereqs

All commands below should be run in a bash shell (Windows users can use the 'mingw64' terminal that is included when installing git).

  1. Clone this repository: create a 'ProjectAeon' directory in your home directory, clone this repository there, and cd into the cloned directory: mkdir ~/ProjectAeon cd ~/ProjectAeon git clone https://github.com/SainsburyWellcomeCentre/aeon_mecha cd aeon_mecha

Set-up

Ensure you stay in the ~/ProjectAeon/aeon_mecha directory for the rest of the set-up instructions, regardless of which set-up procedure you follow below.

Option 1: miniconda (python distribution) and conda (python version manager, environment manager, package manager, and package dependency manager)

  • Note: mambaforge and mamba can be used as faster, drop-in replacements for 'miniconda' and 'conda', respectively. You can set up the Aeon environment using them, following roughly the same instructions as above. See here for more info.

Option 2: pip (python package manager) and venv (python environment manager)

Repository Contents

  • .github/workflows/ : GitHub actions workflows for building the environment and running tests
  • aeon/ : Source code for the Aeon Python package
    • aeon/dj_pipeline: Source code for the Aeon DataJoint MySQL database pipeline
    • aeon/io: Source code for loading raw data
    • aeon/processing: Source code for processing raw data
    • aeon/qc: Source code for quality control of raw data
    • aeon/schema: Examples of 'experiment schemas': variables that can be used to load raw data from particular experiments
  • docker/ : Dockerfiles for building Docker images for the Aeon DataJoint MySQL database pipeline.
  • docs/ : Documentation for the Aeon project
    • docs/devs/ : Documentation for developers
    • docs/env_setup/ : Documentation for setting up the Aeon Python environment
    • docs/examples/ : Aeon usecase examples
    • docs/using_hpc_jupyterhub.md : Instructions for using Jupyter notebooks to access Aeon data via SWC's HPC
    • docs/using_online_dashboard.md : Instructions for connecting to Aeon's online dashboard
  • env_config/ : Configuration files for the Aeon Python environment
  • tests/ : Unit and integration tests
    • tests/data : Data used by tests

Citation Policy

If you use this software, please cite it as below:

Sainsbury Wellcome Centre Foraging Behaviour Working Group. (2023). Aeon: An open-source platform to study the neural basis of ethological behaviours over naturalistic timescales, https://doi.org/10.5281/zenodo.8411157

DOI

Owner

  • Name: SainsburyWellcomeCentre
  • Login: SainsburyWellcomeCentre
  • Kind: organization

Citation (CITATION.cff)

cff-version: 1.0.0
message: "If you use this software, please cite it as below."
authors: 
-  family-names: "Sainsbury Wellcome Centre Foraging Behaviour Working Group"
title: "Aeon: An open-source platform to study the neural basis of ethological behaviours over naturalistic timescales"
doi: 10.5281/zenodo.8413142
date-released: 2023-10-05
url: https://github.com/SainsburyWellcomeCentre/aeon_docs

GitHub Events

Total
  • Issues event: 34
  • Watch event: 4
  • Delete event: 17
  • Issue comment event: 60
  • Push event: 33
  • Pull request review comment event: 188
  • Pull request review event: 181
  • Pull request event: 58
  • Fork event: 2
  • Create event: 7
Last Year
  • Issues event: 34
  • Watch event: 4
  • Delete event: 17
  • Issue comment event: 60
  • Push event: 33
  • Pull request review comment event: 188
  • Pull request review event: 181
  • Pull request event: 58
  • Fork event: 2
  • Create event: 7

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 4
  • Total pull requests: 25
  • Average time to close issues: 1 day
  • Average time to close pull requests: 3 days
  • Total issue authors: 2
  • Total pull request authors: 4
  • Average comments per issue: 1.0
  • Average comments per pull request: 0.52
  • Merged pull requests: 15
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 4
  • Pull requests: 25
  • Average time to close issues: 1 day
  • Average time to close pull requests: 3 days
  • Issue authors: 2
  • Pull request authors: 4
  • Average comments per issue: 1.0
  • Average comments per pull request: 0.52
  • Merged pull requests: 15
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • jkbhagatio (31)
  • ttngu207 (10)
  • glopesdev (7)
  • anayapouget (6)
  • lochhh (5)
  • MilagrosMarin (1)
Pull Request Authors
  • ttngu207 (63)
  • lochhh (11)
  • JaerongA (9)
  • glopesdev (8)
  • jkbhagatio (7)
  • MilagrosMarin (4)
  • anayapouget (2)
  • mehulrastogi (1)
  • jerlich (1)
Top Labels
Issue Labels
bug (17) feature (11) proposal (4) critical (3) question (1)
Pull Request Labels
fix (5) feature (5) bug (3) documentation (1) proposal (1)

Dependencies

aeon/dj_pipeline/webapps/sciviz/apk_requirements.txt pypi
  • bash *
docker/image/apt_requirements.txt pypi
  • bzip2 *
  • git *
  • gnupg2 *
  • htop *
  • net-tools *
  • nvi *
  • openssh-client *
  • procps *
  • tmux *
.github/workflows/docker-aeon-mecha.yml actions
  • WyriHaximus/github-action-get-previous-tag v1 composite
  • actions/checkout v2 composite
  • docker/build-push-action v2 composite
  • docker/login-action v1 composite
  • docker/setup-buildx-action v1 composite
  • docker/setup-qemu-action v1 composite
docker/image/Dockerfile docker
  • ghcr.io/iamamutt/conda_base latest build
  • scratch latest build
.github/workflows/build_env_run_tests.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • codecov/codecov-action v2 composite
  • conda-incubator/setup-miniconda v2 composite
.github/workflows/gpt_pr_review.yml actions
  • coderabbitai/ai-pr-reviewer latest composite
.github/workflows/squash_merge_to_prod.yml actions
  • actions/checkout v2 composite
docker/docker-compose-dev.yml docker
docker/docker-compose.yml docker
pyproject.toml pypi
  • bottleneck >=1.2.1,<2
  • datajoint >=0.13.6
  • datajoint-utilities @ git+https://github.com/datajoint-company/datajoint-utilities
  • dotmap *
  • fastparquet *
  • graphviz *
  • importlib_metadata *
  • ipykernel *
  • jupyter *
  • jupyterlab *
  • matplotlib *
  • numba >=0.46.0, <1
  • numexpr >=2.6.8, <3
  • numpy >=1.21.0, <2
  • opencv-python *
  • pandas >=1.3
  • plotly *
  • pyarrow *
  • pydotplus *
  • pymysql *
  • pyyaml *
  • scikit-learn *
  • scipy *
  • seaborn *
  • xarray >=0.12.3