Skip to main content

NeuroM: a light-weight neuron morphology analysis package

Project description

NeuroM is a Python-based toolkit for the analysis and processing of neuron morphologies.

Test Status Test Coverage Status Documentation Status

Documentation

NeuroM documentation is built and hosted on readthedocs.

Dependencies

The build-time and runtime dependencies of NeuroM are:

  • numpy

  • scipy

  • matplotlib

  • h5py (optional, required for reading HDF5 files)

  • enum34 (pip install takes care of this)

  • pyyaml (pip install takes care of this)

Installation

It is recommended that you use pip to install into NeuroM into a virtualenv:

NeuroM installation

The following assumes virtualenv named nrm with access to the dependencies has been set up and activated. We will see two ways to install NeuroM

  1. From the Python Package Index

  2. From the git repository

  3. From source (for NeuroM developers)

Install package from Python Package Index

(nrm)$ pip install neurom

Install package from git

Install the latest version:

(nrm)$ pip install git+https://github.com/BlueBrain/NeuroM.git

Install a particular release:

(nrm)$ pip install git+https://github.com/BlueBrain/NeuroM.git@neurom-v0.0.1

Install from source

Clone the repository and install it:

(nrm)$ git clone https://github.com/BlueBrain/NeuroM.git
(nrm)$ pip install -e ./NeuroM

This installs NeuroM into your virtualenv in “editable” mode. That means changes you make to the source code are seen by the installation. To install in read-only mode, omit the -e.

Examples

  • Perform checks on neuron morphology files:

(nrm)$ morph_check some/data/path/morph_file.swc # single file
INFO: ================================
INFO: Check file some/data/path/morph_file.swc...
INFO: Has valid soma? PASS
INFO: Has Apical Dendrite? PASS
INFO: Has Basal Dendrite? PASS
INFO: All neurites have non-zero radius? PASS
INFO: All segments have non-zero length? PASS
INFO: All sections have non-zero length? PASS
INFO: Check result: PASS
INFO: ================================


(nrm)$ morph_check some/data/path # all files in directory
....
  • Load a neuron and obtain some information from it:

>>> from neurom import ezy
>>> nrn = ezy.load_neuron('some/data/path/morph_file.swc')
>>> apical_seg_lengths = nrn.get_segment_lengths(ezy.TreeType.apical_dendrite)
>>> axon_sec_lengths = nrn.get_section_lengths(ezy.TreeType.axon)
  • Visualize a neuronal morphology:

>>> # Initialize nrn as above
>>> fig, ax = ezy.view(nrn)
>>> fig.show()

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

neurom-0.0.14.tar.gz (43.2 kB view hashes)

Uploaded Source

Supported by

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