HTML

Az élet kódjai

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

Friss topikok

Bioconductor annotáció készítés

2020.05.19. 23:38 Travis.CG

A Bioconductor remek kezdeményezés, a bioinformatikai elemzések egységes platformja, ahol könnyedén új komponensekkel bővíthetjük a rendszert. Nemcsak szoftver, hanem adat oldalon is bővíthető a rendszer, hiszen a különböző annotációk ugyan olyan fontosak a bioinformatikai munka során, mint az algoritmusok. De mi a helyzet, ha a vizsgált faj annotációja nem létezik a Bioconductor égisze alatt? (Tipp: nézzük meg a blog mottóját.)

Bizony, a Bioconductor amilyen hasznos szolgálatot tesz a humán és egér vizsgálatoknál, olyan használhatatlan más fajoknál. Pedig az EnsEMBL, UniProt, KEGG tele van rengeteg fajjal, csupán azt kellene megoldani, hogy ezek az adatok szabványos formátumban legyenek, hogy aztán a programok felhasználhassák azokat.

Szerencsére nem kell nulláról kezdeni a munkát, a Bioconductor ahhoz is segítséget ad, hogy elkészíthessük ezeket a csomagokat. Lássuk, hogyan is kell hozzákezdeni egy ilyen munkához.

A két legfontosabb csomag, amit használni fogunk, az AnnotationHub és az AnnotationForge. Ha szerencsénk van, csupán egyetlen parancsot kell kiadnunk:

makeOrgPackageFromNCBI(version="0.1", author="Travis <travis@fake.com>", maintainer = "Travis <travis@fake.com>", outputDir = ".", tax_id = "60711", genus = "Chlorocebus", species = "sabaeus")

A legfontosabb paraméter a tax_id. Ez alapján fogja ugyanis a rendszer az NCBI-ról letölteni az adott fajhoz tartozó adatokat. Ami még sok fejfájástól kímél meg minket, ha követjük az annotációs csomagok formátumára vonatkozó ajánlásokat. Például a csomag szerzője után <> közé az email címet is meg kell adni. Letöltés után mindent egy SQLite adatbázisba pakol, majd elkészíti a megfelelő csomagot. Ezt telepíthetjük is:

install.packages("./org.Csabaeus.eg.db/", repo = NULL, lib = "/usr/lib64/R/library")

Az utolsó paraméter nem kötelező, és szükség van írási jogra az adott könyvtárra. Sok esetben ennyi elég is. De, mint ahogy a tapasztalatok is mutatják, ritkán van jó napunk, a legtöbb esetben ennél többet kell dolgozni.

Ilyenkor nekünk magunknak kell a megfelelő adattáblát letölteni, majd formázni. Letölthetjük őket a BioMart-ból, UCSC-ből, vagy egyéb forrásból. Először is azt kell eldöntenünk, mi lesz az elsődleges azonosító. Ez lehet az NCBI vagy az EnsEMBL gén azonosító. Ez azért lesz fontos, mert minden adattáblánk ezen azonosító szerint lesz összekötve. Ez minden táblában az első oszlop kell, hogy legyen, és GID legyen az oszlop neve.

A második legfontosabb lépés, hogy mindegyik táblának, amit az adatbázis építéshez használunk, legyen értéke minden oszlopban. Sok esetben ez nem megvalósítható, ilyenkor célszerű a táblát több al-táblára osztani. A fejléc bármi lehet, de az első oszlop mindenképp a GID kell, hogy legyen.

Amennyiben GO adatokat is szeretnénk, úgy annyi megkötés van, hogy a táblánk három kötelező oszlopot kell, hogy tartalmazzon: GID, GO, EVIDENCE. Az első a gén azonosítónk, a második a GO azonosító, a harmadik pedig a bizonyíték, ami alapján a gént az adott ontológiával összekötöttük. Ezen felül bármilyen további mezőt megadhatunk.

Ha készen vannak a tábláink, el kell készíteni a csomagot:

makeOrgPackage(version="0.1", author="Travis <travis@fake.com>", maintainer="Travis <travis@fake.com>", outputDir=".", tax_id="60711", genus="Chlorocebus", species="sabaeus", ensembl=enstable, ucsc=ucsctable)

A paraméterezés megegyezik a makeOrgPackageFromNCBI-al, de kiegészül az egyes táblák nevével, ami a példában enstable és ucsctable néven szerepel. Megkötés nincs. Az elkészült csomagot a korábban bemutatott módon telepíthetjük.

Természetesen egy létező csomagot is vehetünk alapul, ha nem akarunk mindent más forrásból letölteni. Először érdemes megnézni, milyen adatok érhetőek el az AnnotationHub-ban. Ez az annotációs csomagokat kívánja egyesíteni egy kereshető formában. Használata számomra kicsit szokatlan volt, de cserébe egyszerű.

ah <- AnnotationHub()
res <- query(ah, c("go", "sabaeus"))
mydb -> res[[4]]

A query parancsnak bármennyi kulcsszót megadhatunk, ezek ÉS kapcsolatban lesznek. Az eredmény egy lista azokkal az adatbázis azonosítókkal, melyek megfelelnek a keresési kritériumoknak. Az adatbázis elérhető mezőiről az mcol parancs ad felvilágosítást. További részletekért érdemes megnézni az AnnotationHub dokumentációját.

 

Szólj hozzá!

Címkék: bioinformatika

A bejegyzés trackback címe:

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

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.

Nincsenek hozzászólások.
süti beállítások módosítása