Skip to content

Commit 3d4a598

Browse files
authored
Update README.md
1 parent 7b7378e commit 3d4a598

1 file changed

Lines changed: 104 additions & 1 deletion

File tree

README.md

Lines changed: 104 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,105 @@
11
# Freddie
2-
Co-chaining of local alignments of long reads on gene DAGs
2+
## Installation
3+
4+
The simplest way to install the dependencies is using [Conda](https://docs.conda.io/projects/conda/en/latest/user-guide/install/):
5+
6+
```bash
7+
git clone https://baraaorabi@bitbucket.org/baraaorabi/freddie.git
8+
cd freddie
9+
conda env create -f environment.yml
10+
conda activate freddie
11+
```
12+
13+
14+
15+
## Running Freddie
16+
17+
There are few scripts/stages in Freddie:
18+
19+
- `py/freddie_align.py`: Align reads using `deSALT` mapper. (Optional since freddie accepts any SAM/BAM file for next stages)
20+
21+
- `py/freddie_split.py`: Partitions the reads into independent sets that can be processed in parallel
22+
- `py/freddie_segment.py`: Computes the canonical segmentation for each read set
23+
- `py/freddie_cluster.py`: Clusters the reads using their canonical segmentation representation
24+
- `py/freddie_isoforms.py`: Generates consensus isoforms of each cluster and outputs them in `GTF` format
25+
26+
### Align
27+
28+
```
29+
py/freddie_align.py --reads <FASTA/FASTQ> --genome <FASTA> --out-desalt-index <DIR> --output <SAM>
30+
```
31+
32+
Align takes the following arguments:
33+
34+
- `--reads/-r`: space separated list of FASTA/FASTQ files of the reads
35+
- `--genome/-g`: FASTA file of the genome. Only needed to deSALT index if `--desalt-index` is not provided.
36+
37+
- `--out-desalt-index/-od`: Path to output directory to store deSALT index. Only needed to deSALT index if `--desalt-index` is not provided.
38+
- `--desalt/-d`: Path to deSALT executable. Default: `deSALT`
39+
- `--desalt-index/-i`: Path to deSALT index if it exists.
40+
- `--temporary-prefix/-m`: Temporary prefix for deSALT alignment files. Default: `<--output>.temp`
41+
- `--sequencer/-s`: Sequencer option for deSALT: `null`, `ccs`, `clr`, `ont1d`, or `ont2d`. Default: `null`
42+
- `--output/-o`: Output SAM file
43+
44+
### Split (aka partition)
45+
46+
```
47+
py/freddie_split.py --sam <SAM/BAM> --output <SPLIT.TSV>
48+
```
49+
50+
Align takes the following arguments:
51+
52+
- `--sam/-s`: `SAM/BAM` file of read alignments from deSALT or any other split/splice long-read mapper.
53+
- `--sam-format/-f`: `--sam` file format: `bam` or `sam`. Default: infers format from `--sam` file extension
54+
55+
- ``--output/-o`: Output TSV file of split stage. Default: `freddie_split.tsv`
56+
57+
### Segment
58+
59+
```
60+
py/freddie_segment.py --split-tsv <SPLIT.TSV> --reads <FASTQ/FASTA> --output <SEGMENT.TSV>
61+
```
62+
63+
Align takes the following arguments:
64+
65+
- `--split-tsv/-s`: `SPLIT.TSV` output of the split stage
66+
- `--reads/-r`: Space separated list of FASTA/FASTQ files of the reads
67+
- `--threads/-t`: Number of threads. Default: 1
68+
- `--sigma/-sd`: Standard deviation parameter for the Gaussian filter. Default: 5.0
69+
- `--threshold-rate/-tp`: Coverage percentage threshold for segments. Default: 0.90
70+
- `--variance-factor/-vf`: Variance factor for heuristic of prefixing breakpoints. Any breakpoint with signal greater than `<-vf>` times the standard deviation plus the average of the signals will be prefixed. Default: 3.0
71+
- `--max-problem-size/-mps`: Maximum allowed problem size after which the problem will be broken down uniformly. Default: 50
72+
- `--min-read-support-outside`: Minimum contrasting coverage support required for a breakpoint. Default: 3
73+
- ``--output/-o`: Output TSV file of segment stage. Default: `freddie_segment.tsv`
74+
75+
### Cluster
76+
77+
```
78+
py/freddie_cluster.py --segment-tsv <SEGMENT.TSV> --output <CLUSTER.TSV>
79+
```
80+
81+
Align takes the following arguments:
82+
83+
- `--segment-tsv/-s`: `SEGMENT.TSV` output of the segment stage
84+
- `--gap-offset/-go`: Constant +/- slack used in unaligned gap condition. Default: 20
85+
- `--epsilon/-e`: +/- ratio of length as slack used in unaligned gap condition. Default: 0.2
86+
- `--max-rounds/-mr`: Maximum allowed number of rounds per sub-partition of a read set. Default: 30
87+
- `--min-isoform-size/-is`: Minimum read support allowed for an isoform. Default: 3
88+
- `--timeout/-to`: Gurobi timeout per isoform in minutes. Default: 4
89+
- `--threads/-t`: Number of threads. Default: 1
90+
- `--logs-dir/-l`: Directory path where logs will be outputted. Default: No logging
91+
- `--output/-o`: Output TSV file of cluster stage. Default: `freddie_cluster.tsv`
92+
93+
### Isoforms
94+
95+
```
96+
py/freddie_isoforms.py --segment-tsv <SEGMENT.TSV> --cluster-tsv <CLUSTER.TSV> --output <ISOFORMS.GTF>
97+
```
98+
99+
Align takes the following arguments:
100+
101+
- `--segment-tsv/-s`: `SEGMENT.TSV` output of the segment stage
102+
- `--cluster-tsv/-s`: `CLUSTER.TSV` output of the cluster stage
103+
- `--output/-o`: Output GTF file of isoforms stage. Default: `freddie_isoforms.gtf`
104+
105+

0 commit comments

Comments
 (0)