Kapitola II.1.2 Vznik a charakter dát -> Affymetrix čipy Výuka IBA Anatómia GeneChipu® I. Anatómia GeneChipu® II. §Viac ako 22,000 génov na čipe §Sondy = oligonucleotidy, jednoreťazcové dĺžky 25 bp (AGCATGACTAG……) §Každý gén reprezentovaný sadou 11-20 párov sond (probeset) §Každý pár sond sa skladá z Perfect Match (PM) a Mismatch (MM) sondy §PM je perfektná komplementárna sekvenecia génu §MM – ako PM, okrem prostrednej (13tej) bázy §MM je interná kontrola, merajúca nešpecifické väzby Skenovanie a analýza obrazu Affymetrix §U jednokanálových oligonukleotidových mikročipov je použitá len jedna vlnová dĺžka a pomocou UV skeneru je vytvorený len jeden obraz §U Affymetrix mikročipov je tento obraz vo formáte DAT, a je spracovaný v softvéri firmy Affymetrix Affymetrix vs cDNA §Vzhľadom k odlišnému kontextu sond, odlišné úpravy dát než u cDNA §11-20 sond na gén - nutná sumarizácia, je potrebná jediná hodnota reprezentujúca gén! §Rozlišujeme tedy dve úrovne základných dátových matíc – úroveň sondy (anglicky probe level) a úroveň sady sond (anglicky probeset level) Kontrola kvality a normalizácia §Len jeden kanál => väčšina kontroly kvality a normalizácie sa vykonáva vzhľadom k ostatným čipom v experimente §Niektoré nástroje kontroly kvality využívajú štatistiky, ktoré sú výsledkom modelovania normalizovaných intenzít sond §Kontrolu kvality a normalizáciu proto nebudeme deliť na vnútri čipu a medzi čipmi, ako u dvojkanálových cDNA experimentov, ale na kontrolu sond a kontrolu a normalizáciu mikročipov. Příklad §Zde si načteme další datový soubor, na kterém budeme demonstrovat kontrolu kvality. Jedná se o data akutní lymfoblastické leukemie (Ross a kol., 2004). Soubor je součastí balíku ALLMLL a již je ve formátu AffyBatch. > library(ALLMLL) > data(MLL.B) §Pro ilustraci z dat vybereme pouze osm mikročipů a jejich názvy změníme na čísla. > Data = MLL.B[,c(1:7,14)] > sampleNames(Data) = c(1:7,14) Kontrola kvality na úrovni sady sond I §Najčastejšie v prípade, ak potrebujeme vedieť, či je určitá sada sond je funkčná v zmysle správnej reprezentácie cieľovej sekvencie. > pm(Data,"240060_at") > par(mfrow=c(1,2)) > matplot(pm(Data,"240060_at"), type="l", ylab="PM intensita sondy", xlab="Sada sond 240060_at", las=1, main="PM") > matplot(mm(Data,"240060_at"), type="l", ylab="MM intensita sondy", xlab="Sada sond 240060_at", las=1, main="MM")) Kontrola kvality na úrovni sady sond II §Efekt dávky, gén ESR1, data karcinom kolorekta §Porovnanie ESR1 MM a PM intenzít u ER+ a ER- karcinomu prsu Kontrola kvality na úrovni mikročipu §Kontrola kvality na základě parametrů Affymetrix §Kontrola kvality s pomocí základních diagnostických grafů §Kontrola kvality na základě modelu úrovně sondy (PLM – probe level model) Efekt barviva není problémem, protože máme pouze jeden kanál. Kontrola kvality na základě parametrů Affymetrix I Balík simpleaffy implementuje základní funkce, které počítají sumarizace parametrů kvality GeneChip mikročipu > library(simpleaffy) > Data.qc = qc(Data) §Podle návodu Affymetrixu by průměrné hodnoty pozadí měly být porovnatelné: > avbg(Data.qc) 1 2 3 4 5 6 7 14 67.34494 68.18425 42.12819 61.31731 53.64844 49.39112 75.14030 128.41264 §Škálové faktory by se neměli lišit více než třikrát, u čipů 7 a 14 nalézáme velice nízkou hodnotu: > sfs(Data.qc) 4.905489 9.765986 10.489529 7.053323 7.561613 13.531238 3.394921 2.475224 Kontrola kvality na základě parametrů Affymetrix II §Procento přítomných sond by mělo být také porovnatelné, přičemž extrémně nízké hodnoty jsou znakem nízké kvality. V našem případě je na tom nejhůř čip 6. > percent.present(Data.qc) 1.present 2.present 3.present 4.present 5.present 6.present 7.present 14.present 26.53124 21.65158 25.58181 23.53279 23.35615 17.96423 25.98808 25.25061 §Nakonec, 3’/5’ poměry našich dvou kontrolních sond by neměli překročit hranici tří, v našem příkladu tedy nenalézáme problém s degradací RNA. > ratios(Data.qc) Kontrola kvality na základě základních diagnostických grafů I §Krabicové grafy a hustoty rozložení logaritmovaných hodnot intensit sond u všech mikročipů > par(mfrow=c(1,2)) > boxplot(Data, las=1, ylab="log intensity") > hist(Data, las=1, col=c(1:8), lty=1) > legend("topright",col=c(1:8), lty=1, legend=c(1:7,14)) Kontrola kvality na základě základních diagnostických grafů II §Podobně jako u cDNA mikročipů, i u oligonukleotidových čipů může dojít k prostorovému efektu nerovnoměrné hybridizace, která se pak také odhaluje pomocí heatmapy virtuálně zrekonstruovaného mikročipu (Obr. 4): > par(mfrow=c(1,2)) > hist(Data[,2], las=1, col=2, lty=1) > image(Data[,2]) Kontrola kvality na základě základních diagnostických grafů III §Jako další lze podobně jako u cDNA čipů vykreslit MA graf §M a A hodnoty se buď počítají mezi dvěma mikročipy, nebo úlohu referenčního kanálu zastoupí referenční pseudo-mikročip (medián) > windows(12,7) > par(mfrow=c(2,4), mar=c(2,2,3,1)) > MAplot(Data, cex=0.75, las=1) > mtext("M", 2, outer=T, line=-1.5, las=1) > mtext("A", 1, line=2, at=-6) Kontrola kvality na základě modelu úrovně sondy (PLM – probe level model) I. > PLMres <- fitPLM(Data) Kontrola kvality na základě modelu úrovně sondy (PLM – probe level model) II. Ako kvantifikovať kvalitu? Kontrola kvality na základě modelu úrovně sondy (PLM – probe level model) III. §Relative Log Expression (RLE) §Normalized Unscaled Standard Error (NUSE) kde gi predstavuje intenzitu génu g na sklíčku i a mg medián génu i počítaný cez všetky sklíčka §Počítané pre každý gén, môžu sa využiť ako kontrola kvality sond aj sklíčok Kontrola kvality na základě modelu úrovně sondy (PLM – probe level model) IV. §Pokud vzhledem k druhu experimentu a mikročipu můžeme očekávat, že platí předpoklad o nezměněné expresi většiny transkriptů, můžeme odstranit čip jako nekvalitní, pokud má výrazně posunuté RLE hodnoty mimo 0, a NUSE hodnoty nad 1 (>1.02) > nuse.stat = nuse(PLMres, type="stats") > W = nuse.stat["median",]<1.02 > W 1 2 3 4 5 6 7 14 TRUE FALSE TRUE TRUE TRUE TRUE TRUE TRUE > Data.clean = Data[,W] Funkce Mbox vykreslí krabicové grafy RLE hodnoty pro všechny čipy a funkce NUSE vykreslí krabicové grafy hodnot NUSE : > Mbox(PLMres, main="RLE", las=1) > NUSE(PLMres, ylim=c(0.9,2), las=1, main="NUSE") Normalizace a sumarizace §Mnoho metod pro úpravy dat oligonukleotidových mikročipů představuje algoritmy, které provedou komplexní normalizaci a sumarizaci dat. §V případě, že tyto metody poprvé představili některou z metod, na tuto metodu se pak odkazuje jménem algoritmu. §2 nejznámější algoritmy §MAS 5.0 (Microarray Suite 5.0) §http://www.affymetrix.com/products/software/specific/mas.affx §RMA (log scale Robust Multi-array Analysis) §Methods for Affymetrix Oligonucleotide Arrays R package §http://www.bioconductor.org MAS 5.0 algoritmus RMA algoritmus §Robust Multichip Average: 1.Odpočet hodnoty pozadia (odhadnutá zo všetkých MM) 2.Kvantilová normalizácia 3.Sumarizácia §Používa už všetky microarray sklíčka, počíta len s PM hodnotami, všetky MM používa na odhad pozadia > Data.bg.rma = bg.correct(Data, method="rma") Normalizace mezi mikročipy §Podobně jako u cDNA mikročipů hlavně: §Centrování mediánem §Loess §Kvantilová normalizace §Funkce normalize implementuje několik normalizačních metod. Centrování průměrem: > Data.norm.scale = normalize(Data, method="constant") Kvantilová normalizace: > Data.norm.quant = normalize(Data, method="quantiles") Cyklická loess: > Data.norm.loess = normalize(Data, method="loess") Také funkce threestep balíku affyPLM implementuje několik druhů normalizace. Jak již bylo řečeno výše, tato funkce vrací již sumarizované hodnoty. Příklad 2 § Načteme knihovnu affy pro základní práci s Affymetrix GeneChip daty: > library(affy) §Vytvoření datové struktury AffyBatch budeme demonstrovat na příkladu mikročipů z experimentu porovnávajícího ER (estrogen receptor) pozitivní a ER negativní karcinomy prsu. §Pomocí funkce ReadAffy načteme základní datové matice (CEL soubory) našeho příkladu do datové struktury AffyBatch. > breast = ReadAffy(celfile.path="Raw/") Názvy čipů upravíme, odstraníme koncovku ".CEL": > ns = length(sampleNames(breast)) > nm = unlist(strsplit(sampleNames(breast), split=".", fixed=TRUE))[seq(1,2*ns,2)] > sampleNames(breast) = nm Gén mRNA vzorky M hodnota génu i vzorky j M = Log2(Cy5 / Cy3) – cDNA arrays Funkcia(PM, MM) z MAS, dchip alebo RMA vzorka1 vzorka2 vzorka3 vzorka4 vzorka5 … 1 0.46 0.30 0.80 1.51 0.90 ... 2 -0.10 0.49 0.24 0.06 0.46 ... 3 0.15 0.74 0.04 0.10 0.20 ... 4 -0.45 -1.03 -0.79 -0.56 -0.32 ... 5 -0.06 1.06 1.35 1.09 -1.09 ... Konečná podoba dát