Skip to main content

Python implementation of Nuclear Magnetic Resonance (NMR) signal analysis program "nmrPipe"

Project description

nmrPype

Python implementation of command-line program nmrpipe, using linux pipelines to process NMR data.

Installation

Installing nmrPype can be done by through pip:

# Install prerequisites
pip install numpy scipy
# Install program
pip install nmrPype

A virtual environment or conda environment is recommended for using nmrPype. If using conda, numpy and scipy can be installed using conda install.

Note

This is made for Python 3.10 or above. Some of the code requires Python 3.10's features such as match-case statements.

Python 3.12 is recommended as development is done with 3.12, but testing is done to assure that 3.10 is supported.

Usage

nmrPype can be used in through two methods: Command-line and Script

Command-line

nmrPype -in [inFile] -fn fnName -out [outFile] [-ov]

Functions:

FT                  Perform a Fourier transform (FT) on the data
ZF                  Perform a Zero Fill (ZF) Operation on the data
SP (SINE)           Adjustable Sine Bell
PS                  Perform a Phase Correction (PS) on the data
YTP (TP, XY2YX)     2D Plane Transpose
ZTP (XYZ2ZYX)       3D Matrix Transpose
ATP (XYZA2AYZX)     4D Matrix Transpose (unimplemented)
NULL                Null Function, does not apply any function

Run the nmrPype --help command to see a list of more options.

Script

In a Python script or jupyter notebook use the following line:

import nmrPype

I recommend setting the import as pype for simplification.

Example

import nmrPype as pype

df = pype.DataFrame("h.fid") # Load NMR data file into script
df.array() # Display spectral data array

Building From Source

Building using Pip

  1. Install prerequisites
pip install numpy scipy
  1. Clone the repository
git clone https://github.com/PhiMykah/nmrPype
  1. Install in development mode with pip:
cd nmrPype
pip install -e .

Building using Conda

With conda, the environment.yml file can be used to obtain the development environment.

  1. Clone the repository
git clone https://github.com/PhiMykah/nmrPype
  1. Copy the source conda environment
cd nmrPype
conda env create -f environment.yml --name nmrpype
  • You can set the name to anything you wish, but typically my convention is to have the environments lowercase
  1. Install in development mode with pip:
pip install -e .

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

nmrpype-1.0.9.tar.gz (62.6 kB view details)

Uploaded Source

Built Distribution

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

nmrpype-1.0.9-py3-none-any.whl (78.7 kB view details)

Uploaded Python 3

File details

Details for the file nmrpype-1.0.9.tar.gz.

File metadata

  • Download URL: nmrpype-1.0.9.tar.gz
  • Upload date:
  • Size: 62.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for nmrpype-1.0.9.tar.gz
Algorithm Hash digest
SHA256 9c20ed52a45238bbc83506832dae15b2b2ed285b11a4561beef1fb3270657726
MD5 172d16c2dfb9e2217dd1cce26fc32cbb
BLAKE2b-256 33f631b4a4803ffcac352588bf26d7f28cf5ce767e021bace30c0b6225d30f1f

See more details on using hashes here.

File details

Details for the file nmrpype-1.0.9-py3-none-any.whl.

File metadata

  • Download URL: nmrpype-1.0.9-py3-none-any.whl
  • Upload date:
  • Size: 78.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for nmrpype-1.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 5abfd99c7d404ec2dd4058237be30146b86e36786081b55f4496b7e8777721f9
MD5 c776484bee56dbbd0d8db04fed68c574
BLAKE2b-256 7225c8b11bb911bdc625306b6e3a95e978387dd62f987617cd0ab63f098463ae

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