Skip to main content

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' ]

Metadata

Release files for jb-caliban 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jb-caliban 0.0.2
File Size Uploaded
jb-caliban-0.0.2.tar.gz 137.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jb-caliban 0.0.2
File Interpreter ABI Platform
jb_caliban-0.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 283.7 kB

Release files / jb-caliban-0.0.2.tar.gz

Download URL jb-caliban-0.0.2.tar.gz
Size 137.4 kB
Tags Source
SHA-256 checksum
How to use checksums
b3c2254f4ce2931b596c3f4a19b59fb8b18d3a24613f83c544e734aea4029781
BLAKE2b-256 checksum
How to use checksums
c977198965421b62eb27377b109c3e25513201fcfd3c59d66a0e4d6232a6c21b
Upload date
Uploaded using Trusted Publishing?
What is 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

Release files / jb_caliban-0.0.2-py3-none-any.whl

Download URL jb_caliban-0.0.2-py3-none-any.whl
Size 146.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b5d04d5d4cd47ea8354ee18e3eb73f80025435f8eeeec48ea7d83a966cd7f24d
BLAKE2b-256 checksum
How to use checksums
c1b9d0d737ba243a6a425c23faedaabd8d6cbe9aa40139cb9791fa9d2123ee42
Upload date
Uploaded using Trusted Publishing?
What is 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

Release history Release notifications | RSS feed

0.0.10

1 release file

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

This release

0.0.2 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page