Pitanje:
Značenje polja FORMAT VCF datoteke koje dolaze iz GIAB projekta
J. Velazquez-Muriel
2018-06-27 21:56:17 UTC
view on stackexchange narkive permalink

Nakon što sam pročitao članak GIAB u https://www.biorxiv.org/content/early/2018/05/25/281006 i njegovu sliku 1, i dalje imam problema s razumijevanjem podataka unutar GIAB VCF datoteke za HG001 (HG001_GRCh38_GIAB_highconf_CG-IllFB-IllGATKHC-Ion-10X-SOLID_CHROM1-X_v.3.3.2_all.vcf). Konkretno, moram razumjeti informacije koje su dovele do vrijednosti FILTER PASS za neke varijante.

Prvi slučaj o kojem bih želio razgovarati je sljedeća varijanta:

  chr1 110176467. AG 50 PASS platforme = 3; imena platformi = Illumina, CG, 10X; skupovi podataka = 3; imena podataka = HiSeqPE300x, CGnormal, 10XChromium; pozivni skupovi = 4; = CS_HiSeqPE300xGATK_callable, CS_CGnormal_callable, CS_HiSeqPE300xfreebayes_callable GT: PS: DP: ADALL: AD: GQ 0/1:.: 512: 114,106: 145,148: 760  

Prevođenje informacija u retku na engleski jezik to dobivam:

  • Razmotrili smo podatke iz sljedećih tehnologija sekvenciranja: Illumina, CG, 10X, IonExome, SolidPE50x50bp i SolidSE75bp.
  • Od toga je nekima od njih (IonExome, SolidPE50x50bp, SolidSE75bp) nedostajao poziv, pa smo ih odbacili.
  • Stoga će podaci za varijantu dolaziti s 3 platforme (Illumina, CG, 10X), 3 skupa podataka (HiSeqPE300x, CGnormal, 10XChromium) i 4 skupa poziva (HiSeqPE300xGATK, CGnormal, HiSeqPE300xfreebayes, 10XGAT) ), jer smo analizirali podatke iz HiSeqPE300x s GATK-om, a također i s Freebayes-om.
  • Međutim, pozivni skupovi iz CS_HiSeqPE300xGATK, CS_CGnormal i CS_HiSeqPE300xfreebayes imali su ovaj poziv u regiji s niskom pokrivenošću visokih očitavanja MQ.
  • Na svim platformama DP = 512
  • ADALL (vrijednosti 114.106) dolazi iz "svih" skupova podataka. Jesu li to "svi" skupovi (HiSeqPE300x + Cgnormal + 10XChromium), ili set (Illumina + CG + 10X + IonExome + SolidPE50x50bp + SolidSE75bp).
  • AD (Vrijednosti 145,148) dolazi iz istih "svih" skupova podataka kao i ADALL, ali oni su nefiltrirani, pa 145> 114 i 148> 106.

Sve ovo ima smisla, ali želio bih znati koji je slučaj sa slike 1c primijenjen da bi se došlo do vrijednosti PASS.

Druga varijanta koju bih želio spomenuti je ova:

  chr1 5705293. TC 50 PASS platforme = 3; imena platformi = Illumina, CG, 10X; skupovi podataka = 3; imena podataka = HiSeqPE300x, CGnormal, 10XChromium; pozivni skupovi = 4; = CS_HiSeqPE300xGATK_callable, CS_CGnormal_callable, CS_HiSeqPE300xfreebayes_callable; filt = CS_HiSeqPE300xGATK_filt GT: PS: DP: ADALL: AD: GQ 0/1:.: 599: 121,139: 49,28 >,  > prijevod bi bio:  
  • Razmotrili smo podatke iz sljedećih tehnologija sekvenciranja: Illumina, CG, 10X, IonExome, SolidPE50x50bp i SolidSE75bp.

  • Od toga je nekima od njih (IonExome, SolidPE50x50bp, SolidSE75bp) nedostajao poziv, pa smo ih odbacili.

  • Stoga će podaci za varijantu dolaziti s 3 platforme (Illumina, CG, 10X), 3 skupa podataka (HiSeqPE300x, CGnormal, 10XChromium) i 4 skupa poziva ( HiSeqPE300xGATK, CGnormal, HiSeqPE300xfreebayes, 10XGATKhaplo), jer smo analizirali podatke iz HiSeqPE300x s GATK-om, a također i s Freebayes-om.

  • Međutim, pozivni skupovi iz CS_HiSeqPE300xGATK, CS_CGPExe regija s niskim pokrivanjem visokih očitavanja MQ.
  • Također, podaci iz CS_HiSeqPE300xGATK_filt filtrirani su / odbačeni
  • Na svim platformama, DP = 599
  • ADALL ( Vrijednosti 121,139) potječu iz "svih" skupova podataka. Pretpostavljam (Cgnormal + 10XChromium), jer je CS_HiSeqPE300xGATK_filt filtriran.
  • AD (vrijednosti 49,28) su nefiltrirani.

Ali primijetite da 49<121 i 28<139. Kako to da ima manje nefiltriranih očitavanja (AD)? Ne bi li trebao biti slučaj da je AD> ADALL za sve instance?

Ne znam kako pomiriti dvije varijante. Ne pružaju li suprotne informacije u poljima AD i ADALL? Koji su određeni skupovi podataka i skupovi poziva uključeni u dobivanje AD i ADALL za svaku varijantu?

Također bih cijenio odgovore na nekoliko drugih pitanja:

  • Zašto su ove dvije varijante PASS ako postoje 3 skupa podataka koji se mogu pozvati u regijama s malim pokrivanjem?

  • Jesu li varijante slijedile postupak arbitraže? Pretpostavljam da ne, ako nedostaje oznaka INFO "arbitrirano".

Za referencu, evo opisa u zaglavlju VCF datoteke koju sam koristio:

  ## INFO = <ID = platforme, Number = 1, Type = Integer, Description = "Broj različitih platformi za koje je barem jedan skup poziva nazvao ovaj genotip, filtriran ili ne" > ## INFO = <ID = imena platforme, Broj =., Tip = Niz, Opis = "Imena platformi za koje je barem jedan skup poziva pozvao ovaj genotip, filtriran ili ne" > ## INFO = <ID = skupovi podataka, Broj = 1, Tip = Cijeli broj, Opis = "Broj različitih skupova podataka za koje je barem jedan skup poziva nazvao ovaj genotip, filtriran ili ne" > ## INFO = <ID = imena skupova podataka, Broj =., Tip = Niz, Opis = "Imena skupova podataka za koja na najmanje jedan skup poziva nazvao je ovaj genotip, filtriran ili ne "> ## FORMAT = <ID = ADALL, Number = R, Type = Integer, Description =" Neto dubine alela u svim da taseti "> ## FORMAT = <ID = AD, Number = R, Type = Integer, Description =" Neto dubine alela u svim nefiltriranim skupovima podataka s pozvanim genotipom "> ## FORMAT = <ID = DP, Number = 1, Type = Integer, Opis = "Ukupna dubina čitanja zbrojena u svim skupovima podataka, isključujući MQ0 čitanja" >
## INFO = <ID = datasetsmissingcall, Number =., Type = Integer, Description = "Imena skupova podataka kojima nedostaje poziv ili imaju pogrešan poziv na ovom mjestu, a poziv visoke pouzdanosti je varijanta" > ## INFO = <ID = callable, Number =., Type = String, Description = "Popis skupova poziva koji su imali ovaj poziv u regiji s niskim pokrivanjem visokih očitavanja MQ." > ## INFO = <ID = filt, Number =., Type = String, Description = "Popis skupova poziva kojima je ovaj poziv filtriran." > ## INFO = <ID = arbitrated, Number = 1, Type = String, Description = "TRUE ako su pozivni skupovi imali neusaglašene pozive pa je potrebna arbitraža." >  
Dva odgovori:
Bioathlete
2018-06-28 02:35:14 UTC
view on stackexchange narkive permalink

Kriteriji filtriranja trebaju biti definirani u zaglavlju VCF datoteke. Možete li uključiti zaglavlje iz svoje VCF datoteke?

VCF format i primjer zaglavlja:

  FILTERI koji su primijenjeni na podatke trebali bi biti opisano na sljedeći način: ## FILTER = <ID = ID, Opis = ”description” >  

zaglavlje:

  ## fileformat = VCFv4.0 ## fileDate = 20090805 ## source = myImputationProgramV3.1 ## reference = 1000GenomesPilot-NCBI36 ## phasing = djelomično ## INFO = <ID = NS, Number = 1, Type = Integer, Description = "Broj uzoraka s podacima" > ## INFO = <ID = DP, Number = 1, Type = Integer, Description = "Ukupna dubina" > ## INFO = <ID = AF, Number =., Type = Float, Description = "Allele Frequency" > ## INFO = <ID = AA, Broj = 1, Tip = Niz, Opis = "Ancestral Allele" > ## INFO = <ID = DB, Number = 0, Type = Flag, Description = "dbSNP članstvo, build 129" > ## INFO = <ID = H2 , Broj = 0, Tip = Oznaka, Opis = "Članstvo u HapMap2" > ## FILTER = <ID = q10, Opis = "Kvaliteta biti niska 10 "> ## FILTER = <ID = s50, Opis =" Manje od 50% uzoraka ima podatke "> ## FORMAT = <ID = GT, Number = 1, Type = String, Description =" Genotype "> ## FORMAT = <ID = GQ, Number = 1, Type = Integer, Description = "Kvaliteta genotipa" > ## FORMAT = <ID = DP, Number = 1, Type = Integer, Description = "Read Depth" > ## FORMAT = <ID = HilitmbuualtID = HilitmbuualtID = , Broj = 2, Tip = Integer, Opis = "Haplotip kvaliteta" >  
Hvala na pomoći. Objavio sam polja zaglavlja s kojima imam problema.
Geraldine_VdAuwera
2020-04-23 22:49:56 UTC
view on stackexchange narkive permalink

Za vaše drugo pitanje, mislim da se ta varijanta ne podudara ni s jednim primjerom prikazanim na slici 1c. Imajte na umu da naslov tog vijeća kaže da pokazuje četiri primjera arbitraže. Po vašem posljednjem potpitanju, mislim da ova varijanta nije bila predmet arbitraže.

Za vaše drugo pitanje, vjerujem da je suptilnost u opisima polja:

ADALL = Neto dubine alela u svim skupovima podataka

AD = Neto dubine alela u svi nefiltrirani skupovi podataka s pozvanim genotipom

Koliko razumijem, ADALL je broj dubina alela koji uključuje uzorke kod kojih je varijanta filtrirana ili genotip nije sukladan; nešto u tom smislu. Dakle, općenito bih očekivao ADALL> AD.

Iskreno, nisam siguran što točno misle pod pojmom "nefiltrirani skupovi podataka". To bi moglo značiti "brojanje svih čitanja bez filtriranja kvalitete" ili "skupovi poziva na koje varijanta filtriranja još nije primijenjena". Možda tamo postoji još jedna suptilnost koja objašnjava zašto dvije varijante imaju suprotne proporcije AD i ADALL.

Za vaša dodatna pitanja:

Zašto su ove dvije varijante PASS ako postoje 3 skupa podataka koji se mogu pozvati u regijama s malim pokrivanjem?

Prema radu, postojanje varijante u regijama s malim pokrivanjem ne diskvalificira ako su pozivi genotipa sukladni, što po meni ima smisla. Niska pokrivenost čini me sumnjičavijima, ali ako se više skupova poziva dogovori, i dalje sam voljan smatrati poziv dobrim (osim ako naravno svi pokazuju isti način pogreške, što je glavna potencijalna slabost konsenzusnog pristupa koji koristi GiaB ).

Jesu li varijante slijedile postupak arbitraže? Pretpostavljam da ne, ako nedostaje INFO zastavica "arbitrirano".

Tačno, ako ta zastavica nije prisutna, znači da arbitraža nije bila potrebna / primijenjena.

Hvala. Također mislim da negdje postoji suptilnost. Logično je da ADALL> AD nema smisla, bez obzira je li pozvan ili ne.


Ova pitanja su automatski prevedena s engleskog jezika.Izvorni sadržaj dostupan je na stackexchange-u, što zahvaljujemo na cc by-sa 4.0 licenci pod kojom se distribuira.
Loading...