Progetto di ASD per l'a.a. 2023/2024 su pangenome graphs
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Antonio De Lucreziis 58fabb697f sequence stats 2 months ago
dataset some experiments 7 months ago
examples more compact 2 months ago
src sequence stats 2 months ago
.gitignore initial commit 7 months ago
001.log some progress 2 months ago
002.log some progress 2 months ago
003.log did some runs 2 months ago
004.log did some runs 2 months ago
Cargo.lock some progress 2 months ago
Cargo.toml some progress 2 months ago
README.md updated readme 2 months ago

README.md

Progetto ASD 2023/2024

Creazione e analisi di un Pangenome Graph.

Obbiettivi / Features

  • Caricare un Pangenome Graph dal formato GFA

  • Classificare i nodi del grafo in base al tipo tree, back, forward, cross

  • Rimuovere tutti i nodi di tipo back per rendere il grafo un DAG

  • Restringere il grafo alla componente connessa più grande

  • Ricostruire le sequenze dei nodi del grafo in base ai cammini ed alla direzione di percorrenza dei nodi (forward o reverse)

  • Ricerca di un pattern k-mer in queste sequenze utilizzando il rolling hash

  • (WIP) (Opzionale) Calcolare le frequenze di occorrenza di tutti i k-mer presenti nel grafo

CLI Options

  • -i, --input <input>: file to read

  • -c, --path_count <path_count>: number of paths to visit when searching for the pattern (default: 1)

  • -p, --pattern <pattern>: k-mer pattern to search (default: "ACGT")

  • -k, --kmer_size <kmer_size>: k-mer length (default: 4)

Usage

  • To show help message:

    cargo run -- --help`
    
  • For example to try out the chrX dataset:

    GFA_URL='https://s3-us-west-2.amazonaws.com/human-pangenomics/pangenomes/freeze/freeze1/pggb/chroms/chrX.hprc-v1.0-pggb.gfa.gz'
    wget $GFA_URL -O dataset/chrX.hprc-v1.0-pggb.local.gfa.gz
    gunzip dataset/chrX.hprc-v1.0-pggb.local.gfa.gz
    cargo run --release -- -i dataset/chrX.hprc-v1.0-pggb.local.gfa -c 2 -p ACGT -k 3
    

    altri dataset sono elencati in Note

Example GFA

H	VN:Z:1.0
S	11	G
S	12	A
S	13	T
S	14	T
S	15	A
S	16	C
S	17	A
S	21	G
S	22	A
S	23	T
S	24	T
S	25	A
L	11	+	12	+	*
L	11	+	13	+	*
L	12	+	14	+	*
L	13	+	14	+	*
L	14	+	15	+	*
L	14	+	16	+	*
L	15	+	17	+	*
L	16	+	17	+	*
L	21	+	22	+	*
L	21	+	23	+	*
L	22	+	24	+	*
L	23	+	24	-	*
L	24	+	25	+	*
P	A	11+,12+,14+,15+,17+	*,*,*,*
P	B	21+,22+,24+,25+	*,*,*
W	sample	1	A	0	5	>11>12>14>15>17
W	sample	2	A	0	5	>11>13>14>16>17
W	sample	1	B	0	5	>21>22>24<23<21
W	sample	2	B	0	4	>21>22>24>25

Note

Stats

Language Files Lines Code Comments Blanks
Rust 21 3606 2452 464 690
Python 2 249 164 40 45
TOML 8 110 99 2 9
Markdown 4 131 0 82 34
Total 35 4096 2715 588 778