HTML

Az élet kódjai

Csináld maga. Senki nem csinálja meg helyetted.

Friss topikok

  • sdani: Sajnos nekem is hasonló érzéseim vannak az R kiszorulásával kapcsolatban. Remélem jobban fogja tar... (2024.04.29. 10:48) R meetup
  • sdani: Nagyon jók ezek a bejegyzések! Feszültséggel teli, fordulatos, mint egy jobb krimi. :D Abba ne hag... (2024.04.29. 10:35) Wgel CTF
  • sdani: @Travis.CG: Egy kis szerencse sosem árt. :D (2024.03.01. 13:19) A bioinformatika helyzete 2024-ben
  • Travis.CG: Szóval az akadémiai szféra mazochistává tett, amit a Pinephone-al élek ki? Hmm, érdekes összefüggé... (2023.10.05. 18:23) Új barátom az Informatikai titkárságról
  • Travis.CG: Túl nagy a hype körülötte, ezért túlzó elvárások vannak vele szembe. Ha a korábbi chatbotokhoz kép... (2023.02.28. 06:28) chatGPT, a bioinformatikus

Az IGV sötét titkai

2013.12.08. 08:14 Travis.CG

Az IGV-t mindenki úgy ismeri, mint egy rendes háziasszonyt. Nappal elvégzi a napi teendőket: megjeleníti a BAM fájlokat, mutatja a géneket. De éjjel latex ruhát húz, és nem kérhetsz tőle olyat, amit ne teljesítene. Lássuk, mit is van a palettán:

1. Több genomi pozíciót akarok látni egyszerre: Semmi gond, vesszővel elválasztva írd a koordináta mezőbe. A navigálás lehetetlenné válik, de függőlegesen elválasztva láthatunk több régiót.

2. Túl sok read-em van, túl kicsi a gépem memóriája, mégis böngészni akarok: Állítsd be a maximális read mélységet kisebbre. View -> Preferences -> Alignment menü.

3. Több illesztést akarok látni egy sávban: Ez egy kis extra munkát igényel, még az IGV elindítása előtt. A BAM-oknál be kell állítani a read groupot. Ezt megtehetjük még az illesztéskor, pl BWA-nál a SAM kimenet készítésénél az -r kapcsolóval, vagy az AddReadGroup Picard paranccsal. Ezután fűzzük össze a különböző read group-ot tartalmazó BAM fájlokat (a kötelező érvényű sorba rendezés és indexelés ne maradjon el). Ha ez megvan, az IGV elindítása és a BAM betöltése után jobb egérgomb a readekre és Color by -> Read group.

4. Találtam egy érdekes régiót, el akarom menteni. Ezt több módszerrel is elérhetjük. Az egyik a session-ök használata. A másik, ha kijelöljük a régiót és elmentjük BAM fájlként.

5. Nincs PhD hallgatóm/szakdolgozóm/rabszolgám és több száz genomi régióról akarok képet. Még ez sem probléma. Az IGV távvezérelhető JAVA programokból, vagy saját scriptből. Az IGV saját script nyelve nem ismeri a változókat, ciklusokat, feltételeket, csak a parancsokat, de egy kis metaprobramozással bármit meg tudunk oldani. A parancsok listája itt található. A következő szkripttel IGV vezérlő programot írhatunk:

#!/usr/bin/python3
import sys
for bam in sys.argv[4:]:
   print("load", bam)
print("snapshotDirectory", sys.argv[3])
print("genome",sys.argv[2])
positions = open(sys.argv[1])
for line in positions:
   fields = line.rstrip().split("\t")
   pos = fields[0].split()[0] + ":" + str(int(fields[1])-500) + "-" + str(int(fields[2])+500)
   print("goto", pos)
   print("collapse")
   print("snapshot", pos + ".png")
positions.close()

A szkript első paraméterként egy BED fájlt vár, ami a számunkra fontos genomi pozíciókat tartalmazza. Második paramétere a genom fájl, amit célszerű abszolút elérési úttal megadni. Harmadik paraméter a képek könyvtára, szintén legyen abszolút elérési út. Negyedik paramétertől kezdődően a BAM fájlok listáját lehet megadni.

6. Van egy elvetemült annotációs fájlom, amit nem támogat az IGV. Az elvetemült fájlformátumodat konvertáld át nem elvetemült formátumra. Ha ez mégsem járható út, az IGV-nek el lehet magyarázni, hogy hol találja az értékes információt. Erre egy direktívát kell hozzáadni a fájl elejéhez, ahol kulcs=érték formátumban adhatjuk meg, melyik oszlop mit jelent. Például:

#columns chr=1 start=2 end=3

Ez azt jelenti, hogy az első oszlop a kromoszóma nevét, a második oszlop a kezdőpontot, a harmadik oszlop a végpontot jelöli.

7. Rengeteg beállítást eszközöltem. Hogyan mentsem el ezeket? A munkafolyamat elmentése a megoldás. (File -> Save session) Ez egy XML fájl, akár mi magunk is szerkeszthetjük, vagy programból is létrehozhatjuk. A szerkezetére nem térnék ki.

Rengeteg ingyenes genom nézegető van. Vannak szebbek, vannak könnyebben kezelhetőek, de az IGV egyediségével kitűnik mind közül.

3 komment

Címkék: bioinformatika

A bejegyzés trackback címe:

https://cybernetic.blog.hu/api/trackback/id/tr425601398

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Kalle 2014.02.07. 13:55:24

pos = fields[1].split()[0] + ":" + str(int(fields[2])-500) + "-" + str(int(fields[3])+500)

rossz mezőket használsz, 0,1,2 kell. Meg persze a position-t is nehéz lesz bezárni, ha nem nyitottad meg ;)

Kalle 2014.02.07. 14:06:43

@Kalle: Mondjuk az még mindig nem kóser.

Travis.CG 2014.02.09. 20:35:09

Köszönöm! Ismét bebizonyosodott, hogy a copy-paste programozás nem működik.
süti beállítások módosítása