Parserizzare un file FASTQ, SAM o multifasta (scegliere un formato, il multifasta e’ il piu’ difficile), fornito dall’utente, stampando alla fine:
- la lista dei k-mer presenti nelle sequenze e, per ogni k-mer, il numero N di occorrenze del k-mer;
- per ogni numero N del punto precedente, quanti k-mer sono comparsi quel numero N di volte;
- la media, la mediana e la moda degli N.
La lunghezza k dei k-mer deve anch’essa essere passata dall’utente.
Questo e’ il progetto piu’ impegnativo, quindi sceglietelo solo se vi sentite dei bravi perlini/e.
Cosa sono i k-mer
Un k-mer è una parola di lunghezza k estratta da una stringa.
Data una sequenza tipo “ACGTACGTAAAATGACTGACGTAC”, volendo estrarre i k-mer di lunghezza 6, il primo sarebbe ACGTAC, il secondo CGTACG.
Come funziona il programma
Studiate attentamente le richieste del programma, al fine di iniziare a strutturare il programma solo dopo averle comprese.
Il numero N di occorrenze si riferisce al numero di volte in cui uno specifico k-mer è stato trovato nella sequenza, ad esempio il k-mer AGAGTT potrebbe avere N=100 mentre AGATAC solo 22.
Il programma deve quindi richiedere il nome del file da analizzare, e la lunghezza del k-mer. Dovete decidere voi se analizzare FASTQ, SAM o multifasta.