mms_nirs

A repository of Python code used by the MMS group at UCL to analyse NIRS data

https://github.com/multimodalspectroscopy/mms_nirs

Science Score: 44.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
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.5%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

A repository of Python code used by the MMS group at UCL to analyse NIRS data

Basic Info
  • Host: GitHub
  • Owner: multimodalspectroscopy
  • Language: Python
  • Default Branch: main
  • Size: 142 KB
Statistics
  • Stars: 1
  • Watchers: 0
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Created about 3 years ago · Last pushed over 2 years ago
Metadata Files
Readme Citation

README.md

MMS NIRS

What

This repo contains Python code that can be used with the NIRS data generated at the multimodal spectroscopy group at UCL.

Installation

To install we use conda and poetry. Installation instructions for each of these can be found in their respective documentation. We use these tools to make it easy to develop our Python code in isolated environments (using conda) and to easily add, modify and publish packages (using poetry).

To create a new environment start by making a new conda environment with

bash conda env create -f environment.yml which will create an environment based on the environment.yaml in this repository. The name of the environment will match the one in this file.]

Once this is created you can activate the environment in order to use it

bash conda activate mms_nirs

Once the environment is activated you can then install all the dependencies of the project with poetry install.

To add a new depdency, you use bash poetry add <package_name> # for dependencies that should be available in the final package e.g. numpy poetry add --group dev <package_name> # for dependencies that are only for development e.g. pytest, black etc. and so on as per the documentation. This should install dependencies based on the conda-forge channel which is generally more reliable for data science and scientific computing code, and then it will fal back to PyPi if it's not available there.

Publishing

To publish a new package version you'll need to configure poetry locally as per the documentation. Once that's done you can use the Makefile to publish the changes.

First create a new version of the code in Github

bash make version v=X.X.X where X.X.X is the version as defined by semver (major.minor.patch).

With that done you can then push the change.

To push to the production PyPi repo use

bash make publish-prod and to publish to the test repo (if you want to test changes without impacting other users of the package) use

bash make publish-test

Once that's done you can change the version anywhere it's needed to use the new code.

Owner

  • Name: Multimodal Spectroscopy Group, UCL
  • Login: multimodalspectroscopy
  • Kind: organization
  • Location: London

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Russell-Buckland"
  given-names: "Joshua"
  orcid: "https://orcid.org/0000-0001-7559-1413"
title: "Multimodal Spectroscopy NIRS"
version: 0.2.1
date-released: 2023-05-09
url: "https://github.com/multimodalspectroscopy/mms_nirs"

GitHub Events

Total
Last Year

Dependencies

.github/workflows/ci.yaml actions
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • snok/install-poetry v1 composite
environment.yml pypi
poetry.lock pypi
  • black 23.7.0 develop
  • click 8.1.6 develop
  • colorama 0.4.6 develop
  • exceptiongroup 1.1.2 develop
  • iniconfig 2.0.0 develop
  • mypy-extensions 1.0.0 develop
  • nodeenv 1.8.0 develop
  • packaging 23.1 develop
  • pathspec 0.11.2 develop
  • platformdirs 3.10.0 develop
  • pluggy 1.2.0 develop
  • poetry-core 1.6.1 develop
  • poetry2setup 1.1.0 develop
  • pyright 1.1.318 develop
  • pytest 7.4.0 develop
  • setuptools 68.0.0 develop
  • tomli 2.0.1 develop
  • mpmath 1.3.0
  • numpy 1.25.1
  • pandas 2.0.3
  • pyarrow 12.0.1
  • python-dateutil 2.8.2
  • pytz 2023.3
  • scipy 1.11.1
  • six 1.16.0
  • sympy 1.12
  • tzdata 2023.3
pyproject.toml pypi
  • numpy ^1.24.3
  • pandas ^2.0.1
  • pyarrow ^12.0.0
  • python >=3.10,<3.12
  • scipy ^1.10.1
  • sympy ^1.12