Coder Social home page Coder Social logo

mackelab / epiphyte Goto Github PK

View Code? Open in Web Editor NEW
6.0 3.0 1.0 195.04 MB

Python toolkit for working with high-dimensional neural data recorded during naturalistic, continuous stimuli @a-darcher @rachrapp

License: Other

Python 0.29% Jupyter Notebook 99.71%
movies computational-neurosicence data-pipelines data-analysis python datajoint epiphyte meta-data database toolbox docker

epiphyte's Introduction

Epiphyte

What is Epiphyte?

Epiphyte is a worked data management solution that enables flexible analysis and parallel collaboration on complex datasets. This solution is applied specifically to data consisting of high-dimensional neural signals and a naturalistic, continuous stimulus, although it could be adapted to any paradigm.

Usage

Epiphyte is a worked example, and contains a series of tutorial notebooks meant to bring users through the process of configuring, designing, and deploying a database environment that enables remote collaboration across multiple cities on a complex dataset.

Going through the tutorials will yield a fully functional database, populated with generated mock neural activity and stimulus annotations. While users can in principle modify the import structure and table definitions, the goal of this project is:

  1. to motivate a specific database structure for complex datasets, and
  2. to provide a worked example for building and embedding such a database into an ecosystem that facilitates analysis and remote collaboration.

How to install Epiphyte?

Installation Flowchart

Epiphyte can be configured and deployed for three main use cases, as found in the above flowchart.

Option A: Install a local instance of Epiphyte.

Use cases:

  • You want to test out the database infrastructure before deploying to a remote server.
  • You will be the only user and do not work with large data files.

Follow the installation instructions here:

and continue to Tutorial 4: Configure and connect to the database.

Option B: Install a remote instance of Epiphyte, without MinIO.

Use cases:

  • Multiple people, accessing from separate locations, will use the database.
  • You do not need to support large data files.

Complete Tutorial 1: Launch the MySQL Database

and skip to Tutorial 3: Install and set up Epiphyte.

Option C: Install a remote instance of Epiphyte, with MinIO.

Use cases:

  • Multiple people, accessing from separate locations, will use the database.
  • You use large data files (e.g., LFP, movie data, multi-hour calcium imaging).

Start at Tutorial 1: Launch the MySQL database and continue through the remaining tutorials.

epiphyte's People

Contributors

a-darcher avatar augustes avatar dependabot[bot] avatar rachrapp avatar tamaramueller avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

a-darcher

epiphyte's Issues

Running requirements.txt

Attempted to off-the-shelf use the repo, and ran into two cases with the requirements.txt dependencies.

Removed:
datajoint @ file:///home/conda/feedstock_root/build_artifacts/datajoint_1589638625183/work
tqdm @ file:///home/conda/feedstock_root/build_artifacts/tqdm_1588513834538/work

and pip installed datajoint/tqdm

[Code Quality] Incomplete Repo information

Your repo does not comply to the standards we defined in the lab.
Make sure for your repo to have:

  • a description including the github handle of the owner
  • a > 3 line README.md

If you don't update your repo, it will be disabled and then archived.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.