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:
- Statistical Testing of neuron classification by behavior.
- Visualization of neural activity and behavior data
- Graph Theoretical Analysis of networks of neurons.
- 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.
-
Download and install Anaconda (Python 3.X)
-
Download and install Docker (Windows 10 is strongly recommended).
-
Clone the repository:
git clone https://github.com/jaberry/caliban.git
- 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
- 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
- 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.
-
Download and install Anaconda (Python 3.X)
-
Clone the repository:
git clone https://github.com/jaberry/caliban.git
- 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.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| jb-caliban-0.0.3.tar.gz | 137.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jb_caliban-0.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 283.6 kB
Release files / jb-caliban-0.0.3.tar.gz
| Download URL | jb-caliban-0.0.3.tar.gz |
|---|---|
| Size | 137.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cb03948ddf6b10dab43ce084d45d14f3d2b897439db9ec63d2527385eb0096f8
|
|
BLAKE2b-256 checksum How to use checksums |
9978be7313a8181e3c0786dc6aa9b1bcc8036ddb21666f2004537b73b763c188
|
| 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.3-py3-none-any.whl
| Download URL | jb_caliban-0.0.3-py3-none-any.whl |
|---|---|
| Size | 146.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
98a21525018395d331ed96ada810e6e619fee92a9cfc44140888cdeb497699bd
|
|
BLAKE2b-256 checksum How to use checksums |
dd2bb4f5b574cfa149e9d232f3762dc224cebee69c3210fdcd4e43b9de83ec3f
|
| 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
|