Automated and unbiased classification of motor neuron phenotypes with single cell resolution in ALS tissue.
This repository contains source code to implement automated identification of MNs exhibiting aberrant phenotype from high-content microscopy data. It contains two Jupyter notebook allowing to reproduce the figures in manuscript Automated and unbiased classification of motor neuron phenotypes with single cell resolution in ALS tissue, Hageman et al. 2020 (BioRxiv). All data required to reproduce the manuscript can be download on Zenodo.
- Data: this folder should containing all raw data acquired from CellProfiler on multichanel fluorescent images segmented using the pipeline if one wants to replicate the work. All scripts as well as the raw images required to reproduce these can be downloaded from Zenodo together with the Data folder under the accession number 3985099.
- Scripts: Jupyter Notebook containing
RandPythoncodes to automatically identify MNs subpopulation from the single-cell measurements data outputted by CellProfiler. - Figures: raw figures as outputted by the analysis and used for the paper.
It is recommended to create a virtual environment to ensure complete reproducibility of the project, which relies on R (tested on R-3.3.1) and Python (tested on Python 3.5.3).
install.packages(c('data.table', 'dplyr','knitr','chron','colortools','RColorBrewer','corrplot','geneplotter',
'lme4','beeswarm','rlang','stargazer','viridis','mclust','ape','dendextend','wordcloud','reshape'))Here is how to create a virtual environment called env
- If virtualenv is not installed,
python3 -m pip install --user -U virtualenv cd $MY_PATHwhere$MY_PATHis the location of the repositoryvirtualenv -p ``which python3`` envsource ./env/bin/activatepip3 install --upgrade -r requirements.txt
The file requirements.txt contains all the Python librariries.
Then you can create and work as you would do normally. The next time
cd $MY_PATHsource ./env/bin/activate
On your remote machine (access via SHH for example):
cd $MY_PATHsource ./env/bin/activatejupyter notebook --no-browser --port=8786
On your local machine:
ssh -N -L localhost:8787:localhost:8886 <[email protected]>- Open your browser on the local machine and type in the address bar:
localhost:8787
