Skip to content

Commit 4146e7e

Browse files
authored
Update README.md
1 parent 7c09a2d commit 4146e7e

1 file changed

Lines changed: 11 additions & 8 deletions

File tree

‎README.md‎

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ conda activate SCOTCH
3030

3131
### Input and Output
3232

33-
In general, SCOTCH accepts BAM file(s) tagged by vendor-supplied pipelines for its preprocessing pipeline (For ONT data, please see [here](https://github.com/epi2me-labs/wf-single-cell) for more details), and output a series of information including read-isoform mappings, gene count matrix, isoform count matrix, and updated gene annotations. The `--bam` argument is used to assign input file(s), and `--target` is used to assign the output folder(s).
33+
In general, SCOTCH accepts BAM file(s) tagged by vendor-supplied pipelines for its preprocessing pipeline (For ONT data, please see [here](https://github.com/epi2me-labs/wf-single-cell) for more details), and output a series of information including read-isoform mappings, gene count matrix, isoform count matrix, and updated gene annotations. The `--bam` argument is used to assign input file(s), and `--target` is used to assign the output folder(s). SCOTCH also supports bulk RNA-seq data, set `--bulk` argument if the input bam file is not single cell data.
3434

3535
The SCOTCH pipeline allows users to process one sample at a time or multiple samples simultaneously depending on study designs. When preprocessing multiple samples together, SCOTCH generates a unified gene/isoform annotation based on all BAM files. This approach is particularly beneficial in studies involving multiple samples, as it ensures consistent identification and consolidation of novel isoforms across different samples. Some usage examples are below:
3636

@@ -78,14 +78,17 @@ SCOTCH offers three modes for generating gene annotations:
7878

7979
#### arguments
8080
- `--bam`: path(s) to the bam file(s)/folder(s)
81-
- `--workers`: number of threads for parallel computing.
81+
- `--workers`: number of threads for parallel computing.
82+
- `--coverage_threshold_gene`: coverage threshold to support gene discovery, default is 20.
83+
- `--min_gene_size`: inimal length of novel discovered gene, default is 50.
8284
- `--coverage_threshold_exon`: coverage threshold to support exon discovery, percentage to the maximum coverage, larger values will be more conservative, default is 0.02.
8385
- `--coverage_threshold_splicing`: threshold to support splicing discovery, percentage to the maximum splicing junctions, larger values will be more conservative, default is 0.02.
8486
- `--z_score_threshold`: z score threshold to discovery sharp changes of read coverage, larger values will be more conservative, default is 10.
8587
- `--reference`: Path to gene annotation file in gtf format.
8688
- `--reference_pkl`: Path to gene annotation file generated by SCOTCH named with geneStructureInformation.pkl file
8789
- `--platform`: 10x-ont or 10x-pacbio or parse-ont
8890
- `--barcode_cell` and `--barcode_umi`: if using 10x-ont platform, default setting is `--barcode_cell CB --barcode_umi UB`; if using 10x-pacbio platform, default setting is `--barcode_cell XC --barcode_umi XM`. Users can change this setting according to tags in bam files generated by different preprocessing workflows.
91+
- `--save_mem_ann`: whether to use save memory mode to process in chunks, default is False
8992

9093
Below is an example of generating annotation in the Enhanced-Annotation Mode for two samples simultanuously. See `example/annotation.sh` for an implementation in slurm.
9194

@@ -108,8 +111,9 @@ In this step, SCOTCH aligns reads to existing gene isoforms and identifies novel
108111
- `--target`: the same with step1
109112
- `--bam` the same with step1
110113
- `--reference`: the same with step1
114+
- `--reference_genome_fasta`: path to genome fasta file to reduce false positive novel isoform construction introduced by polyA stretch
111115
- `--match_low` exon percentage lower threshold to call a read-exon unmapping. For example, setting 0.1 means reads covers <10% of the exon length as unmapped. (default is 0.1)
112-
- `--match_low` exon percentage upper threshold to call a read-exon mapping. For example, setting 0.6 means reads covers <20% of the exon length as mapped. (default is 0.6)
116+
- `--match_high` exon percentage upper threshold to call a read-exon mapping. For example, setting 0.6 means reads covers >60% of the exon length as mapped. (default is 0.6)
113117
- `--small_exon_threshold`: dynamic exon length threshold to ignore for includsion and exclusion, default is 0.
114118
- `--small_exon_threshold_high`: the upper bound of dynamic exon length threshold to ignore for includsion and exclusion, default is 80.
115119
- `--truncation_match`: higher than this threshold at the truncation end will be adjusted to 1, default is 0.4.
@@ -121,7 +125,8 @@ python3 src/main_preprocessing.py \
121125
--task 'compatible matrix' \
122126
--target path/to/output/folder/of/sample1 path/to/output/folder/of/sample2 \
123127
--bam path/to/bam/file/or/bamfolder/sample1 path/to/bam/file/or/bamfolder/sample2 \
124-
--reference path/to/reference/genes.gtf
128+
--reference path/to/reference/genes.gtf \
129+
--reference_genome_fasta path/to/reference/genome.fa
125130
```
126131
### Step3: summary gene annotations
127132
In this step, SCOTCH will generate a new gene annotation file, including all novel isoforms identified. Set `--tast summary` to run this step. See `example/summary.sh` for an implementation in SLURM.
@@ -136,8 +141,9 @@ python3 src/main_preprocessing.py \
136141
Finally, SCOTCH will generate gene- and isoform-level copunt matrix. Set `--tast 'count matrix'` to run this step. See `example/count.sh` for an implementation in SLURM.
137142

138143
- `--target`: the same with step1
139-
- '--novel_read_n' filter out novel isoform is the number of reads mapped for the sample less than `novel_read_n`, and reads mapped to this novel isoform will be treated as uncategorized. Default is 20.
140144
- `--workers`: number of threads for parallel computing.
145+
- '--novel_read_n' filter out novel isoform is the number of reads mapped for the sample less than `novel_read_n`, and reads mapped to this novel isoform will be treated as uncategorized. Default is 20.
146+
- '--novel_read_pct' ilter out novel isoforms with supporting read number less than % of gene coverage, default is 0.
141147
- `--save_csv`/`--save_mtx`: these settings are used to set up output format. Saving csv files takes some time.(default is to save in both csv and mtx formats)
142148
- `--group_novel`: whether group some novel isoforms that are potentially generated by read truncations together as one novel isoform.
143149
- `--platform`: 10x-ont or 10x-pacbio or parse-ont
@@ -151,9 +157,6 @@ python3 src/main_preprocessing.py \
151157

152158

153159

154-
155-
156-
157160
## Part2: Statistical Pipeline
158161

159162
### Installation

0 commit comments

Comments
 (0)