The mamba/conda environment that contains all dependencies for this project can be created with
conda env create -f env.yml
conda activate pasc
pip install -e .or
mamba env create -f env.yml
mamba activate pasc
pip install -e .python get_training_data.py --infile ADAPTIVE_ANNOTATIONS.tsv \
--igor_wd /PATH/TO/IGOR/WORKING/DIRECTORY \
--outdir /PATH/TO/SAVE/OUTPUT \
--infer_unproductive_alignmentswill process the Adaptive annotations, producing files giving the unique allelic-level VDJ recombinations for unproductive and productive annotations as well as csvs to be used as input for SONIA/SoNNia models.
See the container_files directory for submitting jobs using a containerized
minimamba (similarly for miniconda).
To produce IGoR training data, unique allelic-level VDJ recombinations are obtained across timepoints using
python combine_igor_data.py --indir /PATH/TO/PROCESSED/UNPRODUCTIVE/FILESTo obtain training data for cohort-level models, use
python aggregate_training_data.py --indir /PATH/TO/PROCESSED/FILES \
--outdir /PATH/TO/SAVE/OUTPUTaggregate_training_data.py has options for subsampling to get training data as well
as changing the of pasc. Use
python aggregate_training_data.py -hto see all the options.
To produce IGoR models, run
bash container_files/submit_igor_jobs.shif using an Apptainer container that has minimamba with the environment created. Otherwise use
bash run_igor.sh WORKING_DIRECTORY SEQS_FOR_IGOR_FILE BATCHNAMETo perform population dynamics analysis with NoisET on repertoire data, first download noiset_analysis.py and noiset_loop.sh. To run analysis on repertoire data, run the following
bash noiset_loop.sh file1 file2where the first file should be the first timepoint and the second file should be the second timepoint. Update noiset_analysis.py as necessary so that files save to an appropriate directory.
To run population dynamics analysis on all INCOV repertoire data, download submit_noiset_jobs.sh and run the following:
bash submit_noiset_jobs.sh