Pipeline for analysis of single cell sequencing data of RNA and T-cell receptors, examining TCR-seq (t), immune cell annotation (i), gene expression (g), epitope annotation (e), and repertoires of clones (r).
The Snakefile reads from the input configuration file (config template: config/config.yaml).
The processing module prepares single cell RNA-seq data for analysis in the following steps:
- make individual Seurat objects of samples
- filter and process individual sample Seurat objects
The integration module prepares single cell RNA-seq data for analysis in the following steps:
- merge together individual Seurat objects
- run integration (using Harmony) on merged Seurat object
The annotation module performs the following annotations of the Seurat object:
- run SingleR to annotate the Seurat object
- add new metadata from input sample sheet
- relevel cell types (so they will plot in a certain order)
- add SingleR, metadata, and cell type releveling info to Seurat object
- add TCR data to Seurat object
The analysis module performs the following analyses of the Seurat object:
- differential expression
- Chi-square tests
- TCR epitope annotation
- TCR clontype overlap analysis
The environment set up for tiger-snake is a conda environment with Snakemake (v9.17.2) installed.
The tiger-snake pipeline is configured to set up the conda environment in snakemake/envs/conda_setup.sh (which is souced when running the main controller script, tiger-snake.sh).
In the conda set up file ([snakemake/envs/conda_setup.sh]), the versions of Snakemake and Nextflow can be changed if different versions of the software are desired.
The pipeline can be run by invoking the main bash script, tiger-snake.sh.
bash tiger-snake.sh \
--config config/config.yaml \
--runtype dry-run \
--executor slurmThe main controller script is tiger-snake.sh. The following argument options are:
| Flag | Required? | Description | Options |
|---|---|---|---|
--config, -c |
✓ | Path to config file | — |
--runtype, -r |
✓ | How Snakemake is invoked | rundry-run |
--executor, -e |
✓ | Executor/profile mode | slurmlocal |
Detailed explanation of flags:
-
--config, -c(required): Path to config file (see config/config.yaml for the required structure) -
--runtype, -r(required): How Snakemake is invokedruntype— executes normallydry-run— passes--dry-runflag to Snakemake
-
--executor, -e(required): Executor mode / profile selectionslurm— enables slurm executor with slurm directiveslocal— runs pipeline on the local machine
The tiger-snake pipeline is still being developed.
- Snakemake v9.17.2
- R v4.5.3
- Bioconductor v3.23
- see
renv.lockfor all versions of R packages