Skip to content

Defense-Circuits-Lab/stats_n_plots

Repository files navigation

stats_n_plots

This repository is part of the DCLwidgets series. These repositories are dedicated to foster the joint development of tools and resources by the Defense Circuits Lab. The intended use of each tool may vary greatly from very lab- and/or analysis-specific problems, to tools and resources that may be of use also for other researchers. The common goal for each repository, however, is to provide the tool as an interactive, userfriendly, and intuitive GUI (usually based on ipywidgets, hence the name), such that the user needs little to no coding expertise.

List of all repositories of the DCLwidgets series:

  • stats_n_plots: A widget to computate and visualize statistical analyses common in the Life sciences (previously hosted here)
  • DCL_to_NWB: A widget to convert datasets acquired in the DCL into the NWB file format
  • BSc_MS: A widget to annotate the corners of a maze within video files and save the corresponding x- and y-coordinates

About this widget

The purpose of this widget is to make everyday life in the lab a little easier, as it helps you to compute statistical tests and to create highly customizable plots that visualize your data. The widget also enables you to select exactly which statistical results you would like to annotate within the plots. This way, statistical analysis and visualization of your data is what it should be - simple & fast!

Please get in touch if you have any feedback, questions, or feature requests for us!


Installation

Using conda:

Although the stats_n_plots package itself is only available on PiPy, we yet recommend installation via conda - especially if you would like to use the GUI. Simply recreate the conda environment on your local machine by running the following command in your command line or terminal (e.g. Anaconda prompt). You can find the corresponding “environment.yml” file in the GitHub repo (here). Just make sure to place the file either in the current working directory (usually displayed at the beginning of each line in your terminal), or to provide the entire filepath (e.g. something like: “C:\Users\dsege\Downloads\environment.yml”):

With the “environment.yml” file in your current working directory:

conda env create -file environment.yml

With the “environment.yml” file in a different directory:

conda env create -file path\to\the\file\environment.yml

This will install all dependencies that are required to use stats_n_plost, including its GUI version.

Note

This installation was so far only tested on Linux (Ubuntu 20.04.4) using conda 22.9.0

Note

If you would like to contribute to the development of stats_n_plost you are more than welcome! On top of the regular user installation, you will, however, also need to install nbdev in the same environment. Simply follow all the steps above and once you have verified that everything was installed correcty, simply run in the same conda environment:

conda install -c fastai nbdev

If you are new to nbdev, you´d probably also want to check out their comprehensive tutorials and walkthroughs here. I will also add some more contribution guidelines to this repository soon. In the meantime, feel free to get in touch! :-)

Using pip:

Despite the stats_n_plots package itself is only available via pypi.org, we still highly recommend to follow the installation guidelines “using conda” above, especially if you´d like to use its GUI functionalities. If you´d still want to go down this route, here´s your install command:

pip install dcl-stats-n-plots

How to use

.. the documentation, including the comprehensive tutorials, is currently being updated ..

Next steps

Caution

The repository was migrated to be now located on the recently created Defense-Circuits-Lab GitHub organisation - originally, it was created and developed here. Alongside the migration, the package was also renamed (originally: dcl_stats_n_plots, now: stats_n_plots).

Importantly, development & maintenance will only continue in this repository on the stats_n_plots package, which can be accessed from PyPi here.

With the main steps of the migration being completed, the next steps include:

  • Update the documentation to eventually match the “refactored” version, which actually already includes some new statistical tests compared to the old version, as well as additional functions inteded to improve usability (like exporting & importing your current plotting settings)
  • Add contribution guidelines and information

Once the steps listed above are completed, there are plenty of ideas for how to continue developing this package further:

  • integrate tests (especially with the improved CI of nbdev v2 and also once additional contributors join)
  • add additional statistical tests & plots (e.g. Kolmogorov-Smirnov test for goodness of fit for cumulative probability functions, or linear & linear mixed effect models, ..)
  • add additional customization options (optional hue column, fonts, ..)
  • improve how configs are export and imported, ideally to include all settings (type of plot, color scheme, …)
  • create DCL-default configs
  • fix bugs ;-)