Code Monkey home page Code Monkey logo

brukerapi-python's Introduction

brukerapi-python

Documentation Status

A Python package providing I/O interface for Bruker data sets.

tl;dr

Install using pip:

pip install brukerapi

Load any data set:

from brukerapi.dataset import Dataset
dataset = Dataset('{path}/2dseq')    # create data set, works for fid, 2dseq, rawdata.x, ser
dataset.data                         # access data array
dataset.VisuCoreSize                 # get a value of a single parameter

Load an entire study:

from brukerapi.folders import Study
study = Study('{path_to_study_folder}')
dataset = study.get_dataset(exp_id='1', proc_id='1')

# get_dataset returns an empty dataset
# in order to load data into the data set, you can either use the context manager:

with dataset as d:
    d.data                         # access data array
    d.VisuCoreSize                 # get a value of a parameter

# or the load function
dataset.load()
dataset.data                       # access data array
dataset.VisuCoreSize               # get a value of a single parameter

Features

  • I/O interface for fid data sets
  • I/O interface for 2dseq data sets
  • I/O interface for ser data sets
  • I/O interface for rawdata data sets
  • Random access for fid and 2dseq data sets
  • Split operation implemented over 2dseq data sets
  • Filter operation implemented over Bruker folders (allowing you to work with a subset of your study only)

Examples

Documentation

Online documentation of the API is available at Read The Docs.

Install

Using pip:

pip install brukerapi

From source:

git clone https://github.com/isi-nmr/brukerapi-python.git
cd brukerapi-python
python setup.py build
python setup.py install

Testing

To ensure reliability, every commit to this repository is tested against the following, publicly available data sets:

Compatibility

The API was tested using various data sets obtained by ParaVision 5.1, 6.0.1 and 360. It it is compatible with the following data set types from individual ParaVision versions.

ParaVision v5.1

Compatible data set types:

  • fid
  • 2dseq
  • rawdata.job0
  • rawdata.Navigator

Compatible pulse sequences for fid data sets:

  • FLASH.ppg
  • MGE.ppg
  • MSME.ppg
  • RARE.ppg
  • FAIR_RARE.ppg
  • RAREVTR.ppg
  • RAREst.ppg
  • MDEFT.ppg
  • FISP.ppg
  • FLOWMAP.ppg
  • DtiStandard.ppg
  • EPI.ppg
  • FAIR_EPI.ppg
  • DtiEpi.ppg
  • T1_EPI.ppg
  • T2_EPI.ppg
  • T2S_EPI.ppg
  • SPIRAL.ppg
  • DtiSpiral.ppg
  • UTE.ppg
  • UTE3D.ppg
  • ZTE.ppg
  • CSI.ppg
  • FieldMap.ppg
  • NSPECT.ppg
  • PRESS.ppg
  • STEAM.ppg
  • igFLASH.ppg

ParaVision v6.0.1

Compatible data set types:

  • fid
  • 2dseq
  • rawdata.job0
  • rawdata.Navigator

Compatible pulse sequences for fid data sets:

  • FLASH.ppg,
  • FLASHAngio.ppg
  • IgFLASH.ppg
  • MGE.ppg
  • MSME.ppg
  • RARE.ppg
  • FAIR_RARE.ppg
  • RAREVTR.ppg
  • RAREst.ppg
  • MDEFT.ppg
  • FISP.ppg
  • FLOWMAP.ppg
  • DtiStandard.ppg
  • EPI.ppg
  • FAIR_EPI.ppg
  • CASL_EPI.ppg
  • DtiEpi.ppg
  • T1_EPI.ppg
  • T2_EPI.ppg
  • T2S_EPI.ppg
  • SPIRAL.ppg
  • DtiSpiral.ppg
  • UTE.ppg
  • UTE3D.ppg
  • ZTE.ppg
  • CSI.ppg
  • FieldMap.ppg
  • SINGLEPULSE.ppg
  • NSPECT.ppg
  • EPSI.ppg
  • PRESS.ppg
  • STEAM.ppg
  • ISIS.ppg
  • CPMG.ppg
  • RfProfile.ppg

ParaVision v360

Compatible data set types:

  • 2dseq
  • rawdata.job0
  • rawdata.Navigator

brukerapi-python's People

Contributors

tomas-psorn avatar wtclarke avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.