Skip to content

Latest commit

 

History

History
43 lines (35 loc) · 2.21 KB

README.md

File metadata and controls

43 lines (35 loc) · 2.21 KB

vnc_networks

Code to analyse the MANC connectome and perform connectome-constrained modelling

Structure:

  • vnc_networks/ contains the main codebase It includes the follwing subdirectories:
    • the files defining the main classes to work with: Connections, Neurons, CMatrix
    • vnc_networks/specific_neurons/: code to analyse specific neurons
    • vnc_networks/utils/: utility functions
  • scripts/ contains the scripts to run the analysis
    • examples/ contains examples of how to use the code
    • generate_plots/ contains the scripts to generate the plots potentially used for the paper
  • data_dumps/ contains the data dumps used for the analysis
  • plots/ contains the plots generated by the scripts
  • preprocessing/ contains preprocessed data used for recurring analysis

Description

The codebase is structured around the following classes:

  • Connections: to load and manipulate the connectome
  • Neurons: to load and manipulate the neurons
  • CMatrix: to load and manipulate the connectivity matrix

The codebase is designed to be modular and flexible. It is possible to load the connectome and the neurons, and then perform any analysis on them.

The classes interact in the following manner: Connections loads the connectome and provides methods to extract the connectivity matrix. The connections between neurons can be modified by providing a list of subdivided Neurons objects or a list of neurons that are not connected together. An example use case is the split a neuron into subparts restricted to a specific region of the connectome. It is possible to initialise a CMatrix object from the Connections object, by providing an adjacency matrix and the ids of the neurons corresponding to the rows and columns of the matrix.

Note on neuron ids: the neuron bodyids are the same as the ones used in the connectome. Given that we can subset or split neurons, the neuron ids are remapped to unique ids named uid. The uid is used to index the neurons in the CMatrix object.

Installation

Make sure you have conda installed, then run the following from inside this directory to create a new environment

conda env create --file ./environment.yml
conda activate vnc
pip install -e .