Spørgsmål:
samtools mpileup tom, når der filtreres fra flag
719016
2017-05-24 20:37:17 UTC
view on stackexchange narkive permalink

Jeg producerede en bam-fil ved at tilpasse læsninger til et lille sæt syntetiske sekvenser ved hjælp af bwa-mem.

Jeg filtrerer stærkt læsninger, der ikke er parret og af en bestemt retning. få et par tusinde læsninger:

  samtools view -h $ myfilebam | \ samtools visning -h -F4 - | \ samtools visning -h -F8 - | \ samtools-visning -h -F256 - | \ samtools-visning -h -F512 - | \ samtools-visning -h -F1024 - | \ samtools-visning -h -F2048 - | \ samtools-visning -h -f16 - | \ samtools-visning -h -f32 - | wc -l  

Giver mig 89502 læser.

Hvis jeg derefter rør dette i samtools mpileup , jeg få ingen resultater:

  samtools view -h $ myfilebam | \ samtools visning -h -F4 - | \ samtools visning -h -F8 - | \ samtools-visning -h -F256 - | \ samtools-visning -h -F512 - | \ samtools-visning -h -F1024 - | \ samtools-visning -h -F2048 - | \ samtools-visning -h -f16 - | \ samtools-visning -h -f32 - | \ samtools mpileup --excl-flags 0 -Q0 -B -d 999999 - | wc -l  

Returnerer 0.

Jeg prøvede forskellige kombinationer af filtrering, og når jeg gør både -f 16 og -f 32 returnerer tomt, men hvis jeg gør en af ​​disse, fungerer det:

  samtools view -h $ myfilebam | \ samtools visning -h -F4 - | \ samtools visning -h -F8 - | \ samtools-visning -h -F256 - | \ samtools-visning -h -F512 - | \ samtools-visning -h -F1024 - | \ samtools-visning -h -F2048 - | \ samtools-visning -h -f16 - | \ samtools mpileup --excl-flags 0 -Q0 -B -d 999999 - | wc -l  

Returnerer 1056.

Nogen ideer hvorfor? Min tænkning var, at det ville fungere med --excl-flags 0 .

EDIT: at erstatte mpileup med dybde betyder ikke arbejde og udskriver hver position og dybden som forventet.

EDIT2: tilføj -q 0 til mpileup giver det samme tomme resultat.

På forhånd tak

Hej, kunne du tilføje nogle detaljer om, hvordan du fik syntetiske læsninger, og hvordan du har justeret den til referencen?
Er du opmærksom på, at `-f 16` kombineret med` -f 32` (btw, du kan bare `-f 48` og springe rørledningen over) filtrerer for uoverensstemmende læsninger? Hvad sker der, hvis du tilføjer `-q 0` til mpileup?
Da `dybde` og` mpileup` deler en hel del kode, er jeg nødt til at spekulere på, om du simpelthen ikke har nogen varianter der. Hvad sker der, hvis du angiver `-a` og filtrerer positionerne uden dækning?
BTW, jeg formoder, at dette vil være et tilfælde, hvor du bliver nødt til at sende BAM-filen et eller andet sted. Der er et par (i øjeblikket kommenterede) `printf ()` s i samtools-koden, der sandsynligvis kunne bruges til at spore, hvad der faktisk sker her.
Devon nævnte det allerede i forbifarten, men det er for vigtigt at gå vild: Samtools-flag er bitmasker, som du skal kombinere! Ring ikke til samtools gentagne gange; kalde det en gang med det kombinerede bit-flag. Du kan bruge [BROAD online-værktøjet] (https://broadinstitute.github.io/picard/explain-flags.html) til at beregne det kombinerede flag, hvis du ikke vil gøre det manuelt.
En svar:
gringer
2017-05-25 03:35:25 UTC
view on stackexchange narkive permalink

Ved at bruge -h i kommandoen samtools view inkluderer du alle overskriftslinjerne i dit antal ord. Hvis du tilfældigvis har ca. 89500 referencesekvenser, vil længderne af dem alle blive vist i overskriften og oppustede -h ordtællingen, men ikke antallet af mpileup. Prøv at føre den gennem en ekstra samtools-visning (dvs. uden -h ) og se om antallet ændres:

  ... samtools view -h -f32 - | \ samtools visning | wc -l  

Også samtools mpileup betragter som standard kun baser af høj kvalitet og afstemte læsninger. Prøv at tilføje en -A til din mpileup-linje (som forhindrer unormale læsepar fra at blive kasseret):

  ... samtools mpileup -A -Q0 -B -d 999999 - | wc -l  
Bingo! Tilføjelse af `-A, - count-orphans forkast ikke unormale læsepar` gjorde tricket!


Denne spørgsmål og svar blev automatisk oversat fra det engelske sprog.Det originale indhold er tilgængeligt på stackexchange, som vi takker for den cc by-sa 3.0-licens, den distribueres under.
Loading...