Pitanje:
Pretvoriti BAM datoteku iz jedne reference u drugu?
morgantaschuk
2017-05-17 01:00:43 UTC
view on stackexchange narkive permalink

Imam set BAM datoteka koje su poravnate pomoću reference ljudskog genoma NCBI GRCh37 (s imenima kromosoma kao NC_000001.10), ali želim ih analizirati pomoću BED datoteke koja ima UCSC hg19 imena kromosoma (npr. chr1 ). Želim koristiti bedtools za izvlačenje svih ciljanih i neciljanih očitavanja.

  1. Jesu li NCBI i UCSC izravno usporedivi? Ili trebam ponovno poravnati BAM / podići BED s UCSC referencom?
  2. Trebam li pretvoriti BED datoteku ili BAM datoteku? Svi ovdje koriste imena / položaje kromosoma UCSC, tako da ću svejedno morati pretvoriti eventualne datoteke u UCSC.
Tri odgovori:
#1
+23
Devon Ryan
2017-05-17 02:04:43 UTC
view on stackexchange narkive permalink

Vi ste druga osoba koju sam ikada vidio koristeći NCBI "imena kromosoma" (više su poput supercontig ID-ova). Obično bih vam uputio na resurs koji pruža preslikavanja imena kromosoma, ali budući da nitko nije dodao NCBI imena (ali možda ću ih sada dodati), trenutno tamo nemate sreće.

U svakom slučaju, najbrži način da učinite ono što želite je samtools view -H foo.bam > header da biste dobili BAM zaglavlje, a zatim promijenili svako NCBI "ime kromosoma" u njegovo odgovarajuće ime UCSC kromosoma. NEMOJTE PREMIJENITI LINIJE! Tada možete koristiti samtools reheader i biti gotovi.

Zašto, možda biste pitali, bi li ovo uspjelo? Odgovor je da se nazivi kromosoma / kontiga u BAM datotekama ne pohranjuju u svakom poravnanju. Umjesto toga, imena su pohranjena na popisu u zaglavlju i svako poravnanje samo sadrži cjelobrojni indeks na tom popisu (pročitajte ID-ove grupa slični su, koliko vrijedi). To također dovodi do gornjeg upozorenja protiv preuređivanja unosa, jer je to VRLO prikladan način za zamjenu poravnanja između kromosoma.

Kao stranu, dobro bi vam poslužilo prebacivanje na imena Gencode ili Ensembl kromosoma, oni prilično su dosljedniji od nereda something_random koji je prisutan u hg19 iz UCSC-a.

Ažuriranje : Jer sam fin, ovdje je pretvorba između NCBI i UCSC. Imajte na umu da ako imate bilo kakva poravnanja zakrpa, jednostavno ne postoji UCSC ekvivalent. Jedan od mnogih razloga zašto se ne upotrebljava UCSC (izbjegavajte i njihove napomene).

Koliko dobro ovo funkcionira? Jeste li pokrenuli neka mjerila? Pitam jer sam pokušao pretvoriti razne datoteke kreveta između hg i GRC genoma, a tri alata koja sam koristio dali su vrlo različite rezultate. Ova vrsta mapiranja doista bi trebala biti jednostavna stvar, ali čini se da uopće nije tako izravna.
U slučajevima kada se radi samo o promjeni imena (većina slučajeva) nema se što usporediti. U slučajevima kada dodatno mijenjate položaj, trebat će vam drugačiji resurs (naime, liftOver ili crossmap).
Da, to su cestarine poput liftOvera i crossmapa koje sam koristio i s kojima sam pronašao probleme. Očekivao sam da će ovo biti riješen problem, ali nažalost svaki od tri alata koja sam koristio dao je različite rezultate. Što me čini užasnim u korištenju rezultata.
Rezultati su deterministički, trebali bi biti jednaki bez obzira na alat pod uvjetom da koristite iste postavke.
Mislili biste, da. Ali nisu. Rado bih čavrljao ([chat]) o ovome (ovo je jedna od stvari koju trebam riješiti na poslu) ako želite, i bilo bi mi vrlo drago kad bih saznao da sam to činio pogrešno, ali moj preliminarni testovi i razne teme koje sam pročitao na mreži (vidi [ovdje [na primjer, https://www.biostars.org/p/14187/#91490)) sugeriraju da to nije tako jednostavno kao što mislite.
Pretpostavljam da će se ovo svesti na nedostatke u lančanim datotekama, ali volio bih čuti o tome.
#2
+3
chrisamiller
2017-05-17 23:56:14 UTC
view on stackexchange narkive permalink

"Pravo" rješenje bilo bi prestrojavanje, ali to je skupo i većina nas ne bi išla tim putem. Moje bi preferirano rješenje bilo pretvoriti datoteku kreveta, za razliku od bam-a. Evo zašto:

1) Preusmjeravanje bam-a znači da ste možda poravnali čitanja s contigovima bez odgovarajućeg unosa u UCSC-u (pogledajte Devonov popis za mapiranja). To je problem jer:

  • Neki od tih čitanja vjerojatno bi bili mapirani negdje drugdje da se koristila referenca bez tih kontigova.
  • Nisam ni siguran što se događa s tim očitanjima nakon preusmjeravanja - pretpostavljam da bi ih trebalo označiti kao necrtane? Tamo ima puno potencijala.

2) Čini se čišćim pretvoriti datoteku kreveta iz UCSC-> NCBI, gdje vam je zajamčeno da svaki unos ima "dom". Zatim, nakon što izvučete svoje podatke iz BAM-a, imena kromosoma uvijek možete pretvoriti natrag ako trebate.

Poravnanja koja na kraju izgube svoj kromosom završavaju ne mapirana, iako ne dobivaju SAM-ovu neoznačenu zastavu (radije, na kraju su predstavljena kao da su na `*` kromosomu). Ali da, `samtools reheader` treba koristiti s velikim oprezom.
Nekoliko alata izbacit će kolebanje ako propustite očitanja na `*` koja nisu označena kao ne mapirana. `pysam` je jedan. Znam to iz gorkog iskustva (ispravljanja bugova).
#3
  0
Ian Sudbery
2017-08-08 16:02:03 UTC
view on stackexchange narkive permalink

Samo da naglasim da ako želite slijediti odgovor @Devona Ryana za drugačiji organizam / sklop, koji nije u njegovom vrlo korisnom povezanom resursu, možete preuzeti NCBI na UCSC contig na mapiranje brojeva kromosoma s https : //www.ncbi.nlm.nih.gov/assembly.

Na web mjesto i potražite naziv sklopa. Na dnu stranice nalazi se okvir pod nazivom "Globalna definicija sklopa" koji sadrži vezu pod nazivom "Preuzmi cjelovito izvješće o redoslijedu".

Preuzeta datoteka sadrži tablicu s:

  • Brojevi kromosoma u "Naziv sekvence" / "Dodijeljena molekula"
  • Imena NCBI u Refseq-Accn
  • Utični naziv UCSC u "UCSC-style-name"


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