Skip to main content

A toolbox for analyzing, designing, and visualizing multiphoton imaging & optogenetics experiments.

Project description

CalSciPy

PyPI Maintenance Coverage Status Documentation Status PyPI - Python Version PyPI - Status GitHub GitHub Workflow Status

CalSciPy is a utility toolbox for calcium imaging experiments. It contains a variety of useful features, from interactive visualization of data to computer-generated holography for "read/write" experiments, and everything in-between. Essentially, it's a collection of code written for my imaging experiments that might be considered useful to others. Its inspiration is to solve the following issues:

Motivation: I was inspired to upload my own code to solve some of these issues--or at least create a neat package my friends and I could use to easily analyze data across various environments and computers.

  1. I noticed I was constantly re-writing boilerplate, "one-liners", and copy/pasting code between environments. I wrote this so I don't have to you don't have to. It's intended to be a collection of useful, well-documented functions often used in boilerplate code alongside software packages such as Caiman, SIMA, and Suite2P. Examples of such tasks include compiling imaging stacks, normalizing signals to baselines, reorganizing data, and common data visualizations. No more wasting time writing 6 lines to simply preview your tiff stack, extract a particular channel, or bin some spikes. No more vague tracebacks or incomplete documentation when re-using a hastily-made function from 2 months ago.

  2. Most scientific software these days have GUIs. But if you want to visualize your data after performing some arbitrary transformation? Womp womp. Maybe you use different tools to extract the same sorts of data, and just want one darn gui to look at them both? Womp womp Well, I want generic, interactive visualization tools. I want to assess the quality of spike inference from recently published spike-finder number #12, I want to sort through ROIs, and I want to explore population activity. I want to do so directly from the relevant data--independent of the software used to collect or analyze it. I want to have my delicious cake and eat it too. So I made some interactive visualization tools that require only the exact information that ought to be required to plot them.

  3. I needed tools for holographic optogenetics, "read/write" experimentation, and general optics in python for my own experiments. Since I was already doing it, why not make them abstracted enough for all neuroscientists to use...not for only the optical or imaging experts. I want them to be tested, documented, and easy-to-use.

  4. I needed some more bespoke software for use with Bruker's PrairieView imaging software for tasks such as parsing metadata, generating protocols programmatically, and aligning collected data.

  5. Finally, I wanted a flexible & extensible system for neatly organizing & timestamping data.

Active Development

The current implementation is unstable, partially untested, partially finished, and should be considered an open alpha/beta. Please be patient, refactoring my code for public use is a pet-project. I have to graduate at some point.

Stable Modules

Until things are more stable, I'll explicitly note which modules' are stable, have >90% test coverage, and are ready-to-use.

  • io_tools as of version 0.4.0

Installation

Eventually I will break things up into sub-packages so you don't have to install everything together...
pip install CalSciPy

Contributions

Save me from myself

Documentation

Hosted at ReadtheDocs. Available locally as HTML, LATEX and PDF.

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

CalSciPy-0.7.5.tar.gz (28.7 kB view details)

Uploaded Source

Built Distribution

CalSciPy-0.7.5-py3-none-any.whl (23.6 kB view details)

Uploaded Python 3

File details

Details for the file CalSciPy-0.7.5.tar.gz.

File metadata

  • Download URL: CalSciPy-0.7.5.tar.gz
  • Upload date:
  • Size: 28.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for CalSciPy-0.7.5.tar.gz
Algorithm Hash digest
SHA256 7583b3cdf2f880d450a8826c5ccf647af9404153b0cfdfe9e7271942f679999c
MD5 b54a9a72758d4e2c71e4ac65a9a6fd70
BLAKE2b-256 60be0198418c487fd126c8e889ccef4be138561d2408a963fa38fe157bb2cb32

See more details on using hashes here.

File details

Details for the file CalSciPy-0.7.5-py3-none-any.whl.

File metadata

  • Download URL: CalSciPy-0.7.5-py3-none-any.whl
  • Upload date:
  • Size: 23.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for CalSciPy-0.7.5-py3-none-any.whl
Algorithm Hash digest
SHA256 0c01ef395d3b177a45619f2f92b6aaf8c42ce1cad89767741e193fb64a843fb6
MD5 8e66e39156ab5b2f06404958bd8f983c
BLAKE2b-256 955a79fab9c03c067b346eb377504a47b817ad6b3bb206a42e16de29a86972af

See more details on using hashes here.

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