abuzarmahmood / blech_clust Goto Github PK
View Code? Open in Web Editor NEWThis project forked from narendramukherjee/blech_clust
License: GNU General Public License v3.0
This project forked from narendramukherjee/blech_clust
License: GNU General Public License v3.0
Can be turned into a confluence page or something else public
yaml allows commenting, which can provide better interactivity with users
Can use this to simply tee print statements to a log file per animal
Maybe can even write to specific sections of a log file
This will help with testing and checking for coverage as well as understanding of flow in scripts
Will also allow for data validation.
This will allow checking for cutoff in blech_clust
Will include:
this will include further processing lie #31 , but NOT analyses.
Analyses can be included in blech_clust (e.g. spectrogram, coherence etc), but separately
Set parameters for thresholding a channel
If number of waveforms detected greater than threshold, allow options:
Would be great to have a combined one that works for both spike sorting and EMG...but separate ones would be a start
pip install -r pip_requirements.txt # Install pip requirements (not covered by conda)
should be changed to
pip install -r pip_requirements_base.txt # Install pip requirements (not covered by conda)
This can be merged with #20 to check both logs, and outputs.
Can have a submodule where outputs for every step are listed. Module is called at top of every file...if previous step has never been logged, or cannot detect outputs of previous step, then it just prevents execution of the script
Would be good to have this for the main spike-sorting pipeline
update algorithm to not do all-to-all comparisons
This could be a txt file written to the plots folder for that channel
This will remove confusion between using index and actual number
And will automatically store it as metadata
This way, given the same .info and sorted .csv, and the same version of blech_clust, one will get the same output
Add it as a separate quality control measure
A log can be added to the QA folder showing which channels were chopped off
Can be done after blech_common_average_reference
This might be something so important that blech_process confirms that the user is aware of this before continuing
That is, when indexing emg_data.npy, we are assuming the order of emg_data follows the CAR groups in the electrode layout file.
While this is likely true, this should be made explicit somewhere (maybe save emg_data.npy as an xarray)
Along with other options...just add templates as a single option.
Suggestion:
Have a templates directory (in blech_clust dir) where people can add their templates
if it's upper case, it throws an error
Includes:
Ignore ones below...not sure if they can be counted as quality assurance
3. Population dynamicity check (relative to other recorded populations)
4. Number + Fraction of taste responsive + discriminative + palatability encoding neurons
Currently, this is conditioned on knowledge of whether/when the headstage fell off, and generated spike trains
But once headstage fall-off is calculated, this can be done generally without reference to spike-trians
For example, instead of asking the user to provide the index of the tastant delivery input, pull that directly from the data.
ALSO - if an info file already exists, find it and skip running the code entirely.
All features used in clustering
This may be useful in determining if slightly varying waveforms are due to drift, noise, or multiple neurons
E.g. if amplitude is changing over time, very likely to be same neuron; as opposed to jumping between 2 or more amplitudes over time
refer to #48
Since gaping has a temporal component, the classifier can leverage this information.
Maybe an hmm on the spectrum of filtered EMG (not spectrum of envelope)
Or provide link to downloading one to help with testing and learning to use
This is to remove dead/noisy channels or at the least process them separately.
Number of electrodes can be determined with KMeans and AIC or BIC.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.