Skip to main content

Calcium Imaging and Behavior Analysis

Project description

caliban: Calcium Imaging and Behavior Analysis

...in dreaming,
The clouds methought would open, and show riches
Ready to drop upon me; that, when I waked,
I cried to dream again.

The Tempest, Act III, Scene ii

Twinkling calcium imaging videos are certainly filled with riches. Whereas Caliban is showered with riches in his slumber, we must dig a little harder to mine these datasets. This software was developed to assist fellow wayward travelers on their journey to understanding how neurons encode information.

This code base was written with the intention of serving as a toolbox for:

  1. Statistical Testing of neuron classification by behavior.
  2. Visualization of neural activity and behavior data
  3. Graph Theoretical Analysis of networks of neurons.
  4. Data Visualization tool -- see the "full picture" of the data garnered from experiments with integration of calcium imaging movies, behavioral videos, and data processing results.

For any feature requests, create an issue.

Getting Started

Docker (Windows Users)

Certain functions do not work properly on Windows, so it is advised that you run your analysis on a Docker container. This will set up a virtual linux environment on your computer. It also allows you to easily control which packages and versions that are present when you run your analysis. Thus, if you or someone else wants to rerun the analysis in the future, they can load your container to get the same computational environment.

  1. Download and install Anaconda (Python 3.X)

  2. Download and install Docker (Windows 10 is strongly recommended).

  3. Clone the repository:

git clone https://github.com/jaberry/caliban.git
  1. Navigate into your local repository and build the Docker image:
cd caliban
docker build --build-arg USERNAME=your_GitHub_username --build-arg PASSWORD=your_GitHub_password . -t jupyter
  1. Use the image to run a container:
docker run -it -p 9999:9999 my_analysis_container

If you need to mount data to the container, then use the following command:

docker run -it -p 9999:9999 -v source_directory:target_directory my_analysis_containter

For example, if you have data in myfolder1/data, and a folder of notebooks in myfolder2/notebooks, then you can mount both using:

docker run -it -p 9999:9999 -v myfolder1/data:/mnt/data -v myfolder2/notebooks:/mnt/notebooks my_analysis_container
  1. You should see something along the lines of:
...
    Or copy and paste one of these URLs:
        http://127.0.0.1:9999/?token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Now open your browser window and go to the URL that was created for you. You can see the containers you have created by opening the Docker Dashboard that is part of the Docker application. They are given weird codenames like "admiring_bohr". You can open previous containers that you created from the Dashboard, so you don't need to do docker run again unless you want to make a new container.

Installation on Mac or Linux (Python 3.x)

Using a Docker container is optional for Mac or Linux, since all the functions should work properly. However, you can follow the instructions above if you wish to use Docker.

  1. Download and install Anaconda (Python 3.X)

  2. Clone the repository:

git clone https://github.com/jaberry/caliban.git
  1. Navigate into your local repository and create your environment:
cd caliban
bash create_env.sh

Troubleshooting

Create an issue For members of the Hen Lab, feel free to message Jack Berry via Slack.

dependencies = [ 'cython==0.29', 'jupyter==1.0.0', 'networkx=2.2', 'numpy=1.15.4', 'pandas=0.24.1', 'python=3.7.1', 'scikit-learn=0.20.1', 'seaborn=0.9.0', 'h5py', 'holoviews', 'shapely', 'py-opencv', 'bokeh' ]

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

jb-caliban-0.0.3.tar.gz (137.4 kB view details)

Uploaded Source

Built Distribution

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

jb_caliban-0.0.3-py3-none-any.whl (146.2 kB view details)

Uploaded Python 3

File details

Details for the file jb-caliban-0.0.3.tar.gz.

File metadata

  • Download URL: jb-caliban-0.0.3.tar.gz
  • Upload date:
  • Size: 137.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.6.9

File hashes

Hashes for jb-caliban-0.0.3.tar.gz
Algorithm Hash digest
SHA256 cb03948ddf6b10dab43ce084d45d14f3d2b897439db9ec63d2527385eb0096f8
MD5 30c6c33bc9e608059dd606fa8415cf0f
BLAKE2b-256 9978be7313a8181e3c0786dc6aa9b1bcc8036ddb21666f2004537b73b763c188

See more details on using hashes here.

File details

Details for the file jb_caliban-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: jb_caliban-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 146.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.6.9

File hashes

Hashes for jb_caliban-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 98a21525018395d331ed96ada810e6e619fee92a9cfc44140888cdeb497699bd
MD5 24fe8d8f2424a9592f004146d5a38825
BLAKE2b-256 dd2bb4f5b574cfa149e9d232f3762dc224cebee69c3210fdcd4e43b9de83ec3f

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