-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathMakefile
174 lines (139 loc) · 5.41 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
install_system_prereqs:
# https://github.com/s3fs-fuse/s3fs-fuse
sudo apt-get install -y s3fs
# allow non-root to mount
sudo cat "user_allow_other" > /etc/fuse.conf
sudo chmod a+r /etc/fuse.conf
# to load HDF5 dataset
sudo apt install -y libhdf5-serial-dev
# Monocle3 requirements
sudo add-apt-repository ppa:cran/libgit2
sudo apt-get update
sudo apt-get install -y libssh2-1-dev libgit2-dev
sudo apt-get install -y libudunits2-dev
sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable
sudo apt-get update
sudo apt-get install -y libgdal-dev libgeos-dev libproj-dev
sudo apt-get install -y libv8-dev
install_prereqs:
# data tools
conda install setuptools pandas joblib nodejs
# data io
conda install -c conda-forge scikit-learn
conda install -c conda-forge pyarrow
conda install -c conda-forge h5py
conda install -c conda-forge boto3
conda install -c conda-forge mysql-connector-python
conda install -c conda-forge xlsxwriter
pip install python-bioformats
# embedding
conda install -c conda-forge umap-learn
conda install -c conda-forge hdbscan
conda install -c conda-forge leidenalg
conda install -c conda-forge pot
# notebook support
conda install -c conda-forge holoviews
conda install -c conda-forge pyviz panel
conda install -c conda-forge jupyterlab
conda install -c conda-forge datashader
conda install -c conda-forge shapely
conda install -c bokeh selenium
conda install -c conda-forge firefox geckodriver
# install geckodrive from e.g. from https://github.com/mozilla/geckodriver/releases/download/v0.31.0/geckodriver-v0.31.0-linux64.tar.gz
conda install phantomjs
pip install nbstripout nbconvert
# make jupyter lab work with holoviews
jupyter labextension install jupyterlab_bokeh
jupyter labextension install @pyviz/jupyterlab_pyviz
echo "c = get_config()" >> $(jupyter --config_dir)/jupyter_notebook_config.py
echo "c.NotebookApp.iopub_data_rate_limit=100000000" >> $(jupyter --config_dir)/jupyter_notebook_config.py
# update all packages
conda update --all
install:
python setup.py install
install_extras:
# install STREAM
# conda install -c bioconda fails because with wrong version of python error:
# stream -> python[version='>=3.5,<3.6.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0']
conda install rpy2
conda install -c conda-forge seaborn
conda install -c conda-forge statsmodels
conda install -c conda-forge anndata
pip install git+git://github.com/pinellolab/STREAM.git
wget https://files.pythonhosted.org/packages/59/9c/972de8fb6246be6557a16565c4cc1977ea9e275540a77ec4a2e0057dc593/tf_nightly-2.2.0.dev20200228-cp38-cp38-manylinux2010_x86_64.whl
pip install tf_nightly-2.2.0.dev20200228-cp38-cp38-manylinux2010_x86_64.whl
pip install nbdev
install_ml_support:
pip install git+https://github.com/ae-foster/pyro@infograd-docking
pip install lz4
pip install tqdm
pip install pytorch-lightning
conda install -c conda-forge tensorflow
conda install -c conda-forge tensorboard
conda install -c conda-forge tensorboardx
pip install test_tube
pip install ipywidgets
jupyter nbextension enable --py widgetsnbextension
pip install git+https://github.com/AllenCellModeling/pytorch_fnet
install_chemoinformatic_support:
conda install -c conda-forge rdkit
sudo apt-get install cmake
sudo apt-get install swig
cd ~/opt
wget https://gitlab.com/libeigen/eigen/-/archive/3.3.7/eigen-3.3.7.tar.bz2
tar xvjf eigen-3.3.7.tar.bz2
rm -rf eigen-3.3.7.tar.bz2
cd eigen-3.3.7
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=~/opt ..
make install
cd ~/opt
wget https://github.com/openbabel/openbabel/releases/download/openbabel-3-1-1/openbabel-3.1.1-source.tar.bz2
tar xvjf openbabel-3.1.1-source.tar.bz2
rm -rf openbabel-3.1.1-source.tar.bz2
cd openbabel-3.1.1
mkidr build
cmake -DCMAKE_INCLUDE_PATH=~/opt/include -DCMAKE_INSTALL_PREFIX=~/opt -DPYTHON_BINDINGS=ON ..
make -j20
cd /tmp
pip download openbabel
tar xzvf openbabel-3.1.1.tar.gz
rm -rf openbabel-3.1.1.tar.gz
cd openbabel-3.1.1
python setup.py build_ext -I/home/ubuntu/opt/include/openbabel3 -L/home/ubuntu/opt/lib
python setup.py install
pip install pybel
install_acas_support:
sudo apt-get install libpq-dev
run_Steatosis2020_vignette:
# generate umap embeddings and density based clusterings
# produces
# intermediate_data/<dataset_tag> with processed features different data subsamples
# intermediate_data/<embedding_tag> directory with embeddings and clusterings
# product/figures/<embedding_tag>_embedding.png with images of the embeddings
cd vignettes/Steatosis2020/umap_embedding_202017
jupyter lab
# on local machine:
# ssh -i "<ec2_instance_id>.pem" -NfL 8887:localhost:8888 ubuntu@<instance_url>
# where <ec2_instance_id> is the Amazon EC2 .pem file
# and <instance_url> is the IP or URL to the instance
# natigate browser to localhost:8887
# put in security token
python scripts/1_init.py
python scripts/2_load_data.py
./scripts/3_embed_umap_2D.sh
start_local_dask_cluster:
dask-scheduler --scheduler-file temp/scheduler.json &
dask-worker --shceduler-file temp/scheduler.json &
start_Steatosis2020_vignette_notebooks:
# note the secret token
# on local machine:
# ssh -i "sextonlab_linux.pem" -NfL 8887:localhost:8888 [email protected]
# natigate browser to localhost:8886
# put in security token
snakemake:
conda install -c conda-forge mamba
mamba install -c bioconda -c conda-forge snakemake
viv:
conda install -c ome bioformats2raw raw2ometiff