r ile biyoenformatikcomp.eng.ankara.edu.tr/files/2019/10/week-2.pdfr ile biyoenformatik metehan...
TRANSCRIPT
R ile Biyoenformatik
Metehan Ünal
Sunum genel olarak «Bioinformatics with R Cookbook (Paurush Praveen Sinha)»
kitabını temel almaktadır.
Metehan Ünal 1
Previously on Lost
• Geçen hafta ne yaptık:
• Yükleme İşlemleri
• Veri Okuma ve Yazma
• Veri Filtreleme ve Bölümleme
Metehan Ünal 2
Verilerde Temel İstatistiksel İşlemler
• İstatistiksel bir programlama ortamı olan R, veriler üzerinde çeşitli istatistik
işlemleri gerçekleştirmek için bir takım yerleşik fonksiyonlara sahiptir.
• Bununla birlikte, bazı spesifik işlevler paketlerde bulunur veya kolayca
yazılabilir.
• Bu bölümde, bazı temel yerleşik ve kullanışlı paket içi seçenekler tanıtılacaktır.
Metehan Ünal 3
Verilerde Temel İstatistiksel İşlemler
• Bu derste önkoşul, çalışmak istediğiniz veri setidir.
• İris veri kümesini bu dersteki örneklerin çoğunda kullanacağız.
Metehan Ünal 4
Verilerde Temel İstatistiksel İşlemler
• Veriler üzerinde temel bir istatistiksel işlem gerçekleştirme adımları aşağıda
listelenmiştir:
1. R, ortalama standart sapma gibi çeşitli istatistiksel parametrelerin basit bir
fonksiyonla hesaplanmasını kolaylaştırır. Bu, tek tek vektörlere veya aşağıdaki
gibi tüm data frame’e uygulanabilir:
> summary(iris) #tablo verisinin her bir sütunu için özet bilgi sunar.
Metehan Ünal 5
Verilerde Temel İstatistiksel İşlemler
2. « cor » fonksiyonu, iki vektör arasındaki korelasyonun aşağıdaki şekilde
hesaplanmasına izin verir:
> cor(iris[,1], iris[,2])
[1] -0.1175698
> cor(iris[,1], iris[,3])
[1] 0.8717538
Metehan Ünal 6
Verilerde Temel İstatistiksel İşlemler
3. Veri matrisinin kovaryansını elde etmek için, sadece aşağıdaki gibi cov işlevini
kullanın:
> Cov.mat <- cov(iris[,1:4])
> Cov.mat
Metehan Ünal 7
Verilerde Temel İstatistiksel İşlemler
• Bu kısımda gördüğümüz fonksiyonların çoğu temel R veya genel fonksiyonların bir parçasıdır. R'deki summary fonksiyonu, inputun sınıfına bağlı olarak inputun özetini gösterir. Bu fonksiyon, giriş nesnesinin sınıfına bağlı olarak çeşitli fonksiyonları çağırır.
• Dönen değer ayrıca input nesnesine de bağlıdır. Örneğin, giriş sayısal verilerden oluşan bir vektör ise, veriler için ortalama, ortanca, minimum, maksimum ve çeyrekleri gösterecektir, eğer girdi tablo (sayısal) veri ise, her sütun için benzer hesaplamalar verecektir. İleriki bölümlerde summaryfonksiyonunun farklı input nesneleri için nasıl çalıştığını göreceğiz.
Metehan Ünal 8
Verilerde Temel İstatistiksel İşlemler
• Fonksiyonlar verileri input olarak kabul eder, inputa ve fonksiyona bağlı
olarak tüm bu istatistiksel puanları hesaplar ve veriyi vektör, liste veya data
frame olarak görüntüler.
• Bu fonksiyonların çoğu için, na.rm argümanını kullanma olanağımız vardır.
Bu, kullanıcının eksik verilerle çalışmasını sağlar. Verilerimizde eksik değerler
varsa (R dilinde NA olarak adlandırılırlar), na.rm argümanını TRUE olarak
ayarlayabiliriz ve hesaplama yalnızca NA olmayan değerlere dayanarak yapılır.
Metehan Ünal 9
Verilerde Temel İstatistiksel İşlemler
• Örnek:
> a <- c(1:4, NA, 6)
> mean(a) # Sonuç olarak ne dönecek gözlemleyelim.
> mean(a, na.rm=TRUE) # Sonuç olarak ne dönecek gözlemleyelim.
Metehan Ünal 10
Verilerde Temel İstatistiksel İşlemler
• Burada, eksik değerlerin olması durumunda, ortalama fonksiyonun, eksik
değerin nasıl işleneceğini bilmediğinden, varsayılan olarak NA döndürdüğünü
görüyoruz.
• na.rm değerini TRUE olarak ayarlamak, 6 yerine (1,2,3,4,NA,6) 5 sayının
(1,2,3,4,6) ortalamasını hesaplar ve 3.2 değerini döndürür.
Metehan Ünal 11
Verilerde Temel İstatistiksel İşlemler
• İris verilerimizde sepal uzunluk ve sepal genişlik arasındaki korelasyonu
hesaplamak için; basitçe verinin iki sütununu (sepal uzunluk ve sepal genişlik)
cor fonksiyonunun argümanı olarak kullanırız.
• Pearson, Spearman, Kendall ve benzeri farklı korelasyon katsayılarını,
fonksiyon argümanlarından apt değerini belirleyerek hesaplayabiliriz. Daha
detaylı bilgi için help(?cor) kullanabilirsiniz.
Metehan Ünal 12
Olasılık Dağılımları Üretme
• Bu bölümdeki herhangi bir şey hakkında konuşmadan önce, R terminalinizdeki
(konsolunuzdaki) ?Distributions fonksiyonunu deneyin. Farklı olasılık
dağılımlarından oluşan bir yardım sayfasının açıldığını göreceksiniz. Bunlar R'nin
temel paketinin bir parçasıdır.
• Tüm bu dağılımları, ek paketlerin yardımı olmadan oluşturabilirsiniz. Bazı ilginç
dağılımlar sıradaki slayttaki tabloda listelenmiştir. Diğer dağılımlar, örneğin, çok
değişkenli normal dağılım (MVN), harici paketlerin kullanılmasıyla üretilebilir (MVN
için MASS paketleri). Bu fonksiyonların çoğu aynı sözdizimini/sintaksı izler, böylece
birine alışırsanız, benzer şekilde diğerlerini de kullanabilirsiniz.
Metehan Ünal 13
Olasılık Dağılımları Üretme
Metehan Ünal 14
Olasılık Dağılımları Üretme
• Olasılık dağılımlarını üretme adımları şunlardır:
1. Ortalaması (mean) 1, standart sapması 0.1 olan 100 örnekli normal dağılımlı veri üretmek için aşağıdaki komut kullanılır:
> n.data <- rnorm(n=100, mean=1, sd=0.1)
2. Dağılımı aşağıdaki gibi gözlemlemek için histogramı çizin:
> hist(n.data)
3. Aşağıdaki komutu yazarak dağılımın yoğunluğunu ve şekli kontrol edin :
> plot(density(n.data))
Bu plottaki çan şeklini görüyor musunuz?
Metehan Ünal 15
Olasılık Dağılımları Üretme
• Diğer prefixlerin karşılık gelen parametrelerini tanımlamak için aşağıdaki
yardım dosyası örneğini kullanın:
> ?pnorm
Metehan Ünal 16
Olasılık Dağılımları Üretme
• rnorm fonksiyonunun üç argümanı vardır: n (oluşturmak istediğiniz örnek sayısı), dağılımın istenen ortalaması (mean) ve dağılımdaki istenen standart sapma (sd). Bu sayede komut, ortalama ve standart sapmaların sizin tarafınızdan tanımlandığı gibi olan bir n uzunluğunda vektörü oluşturur.
• Tabloda açıklanan fonksiyonlara yakından bakarsanız, bir kalıp olduğunu tespit edebilirsiniz.
• Sırasıyla olasılık (probability), quintiles, yoğunluk (density) ve rasgele örnekler (random samples) üretmek için her dağılım fonksiyonunun adına p, q, d ve r ön ekleri eklenir.
Metehan Ünal 17
Olasılık Dağılımları Üretme
• Aşağıdaki daha önce gösterilen tablo, R'deki çeşitli istatistiksel dağılımlarla
ilgili işlevleri göstermektedir (sadece R’ın temel paketleri):
Metehan Ünal 18
Olasılık Dağılımları Üretme
• Araştırma veya uygulamadaki sonuçların önemini değerlendirmek ve nicel
kararlar verilmesine yardımcı olmak için istatistiksel testler yapılır.
• Buradaki fikir, sonuçlarla ilgili bir varsayımı reddetmek için yeterli delil olup
olmadığını belirlemektir.
• R'deki yerleşik fonksiyonlar veriler üzerinde bu tür birkaç teste izin verir.
• Test seçimi verilere ve sorulan soruya göre değişir.
Metehan Ünal 19
Olasılık Dağılımları Üretme
• Açıklamak gerekirse, bir grubu varsayımsal bir değerle karşılaştırmamız
gerektiğinde ve ölçümlerimiz Gauss dağılımını takip ediyorsa, tek örnekli bir t
testi kullanabiliriz.
• Bununla birlikte, karşılaştırılan iki eşli grubumuz (Gauss dağılımını izleyen
her iki ölçüm) de karşılaştırıldıysa, eşleştirilmiş bir t testi kullanabiliriz.
• R, bu tür testleri yapmak için yerleşik işlevlere sahiptir ve bu kısımda
bunlardan bazılarını deneyeceğiz.
Metehan Ünal 20
• Verileriniz üzerinde istatistiksel bir test yapmak için aşağıdaki adımları kullanın:
1. Bir t-testi yapmak için verilerinizi (bizim durumumuzda uyku/sleep verisidir) aşağıdaki gibi yükleyin:
> data(sleep)
2. Birinci ve ikinci sütunlarda iki taraflı, eşleştirilmemiş t testi gerçekleştirmek için (iki koşulun değerleri), aşağıdaki komutları yazın:
> test <- t.test(sleep[,1]~sleep[,2])
> test
Metehan Ünal 21
• T-testi (bizim durumumuzda, iki örnek t-testidir) hesaplanan ortalamanın gerçek ortalamadan tesadüfen nasıl sapabileceğini hesaplar.
• Burada, zaten R'de bulunan uyku verilerini kullanıyoruz.
• Bu uyku verisi, iki ilacın, 10 kontrol hastasının uyku verilerine kıyasla uyku saatlerinde bir artış açısından etkisini göstermektedir.
• Sonuç, p-değeri (p-value), güven aralığı (confidence interval), yöntem (method) ve ortalama tahminler (mean estimates) gibi dokuz unsurdan oluşan bir listedir.
Metehan Ünal 22
3. Aşağıdaki gibi bir olasılık tablosu oluşturun:
> cont <- matrix(c(14, 33, 7, 3), ncol = 2)
> cont
Metehan Ünal 23
4. Sedan ve convertable olmak üzere iki araba türünü temsil eden (sütunlar),
male ve female olmak üzere iki cinsiyet temsil eden (satırlar), ve sütünlarda
araba türlerine sahip olan kişilerin sayısını gösteren bir tablo oluşturun.
Aşağıdaki kodları yazdığınızda tablo görüntülenecektir:
> colnames(cont) <- c("Sedan", "Convertible")
> rownames(cont) <- c("Male", "Female")
> cont
Metehan Ünal 24
• «Chi-square» istatistikleri, kategorik değişkenlerin dağılımlarının birbirinden farklı olup olmadığını araştırmaktadır.
• Gözlemlenen verileri, belirli bir hipoteze göre elde etmeyi umduğumuz verilerle karşılaştırmak için yaygın olarak kullanılır.
• Bu örnekte, bir cinsiyetin bir otomobil için farklı bir tercihi olduğu senaryosunu düşündük, p-değerinde 0,05 düzeyinde doğru çıktı.
• Chi-square testi için beklenen değerleri chisq.test(as.table(cont))$expectedfonksiyonu ile de kontrol edebiliriz.
Metehan Ünal 25
5. Otomobil tipini ve cinsiyetini bulmak için, bu olasılık durum tablosuna
dayanarak bir Chi-square testi yapın:
> test <- chisq.test(as.table(cont))
> test
Metehan Ünal 26
6. Wilcoxon işaretli-sıralama testi için, önce aşağıdaki komutlarda gösterildiği
gibi, ilk önce x ve y olarak test edilecek gözlemleri içeren bir vektör kümesi
oluşturacak biçimde yazın:
> x <- c(1.83, 0.50, 1.62, 2.48, 1.68, 1.88, 1.55, 3.06, 1.30)
> y <- c(0.878, 0.647, 0.598, 2.05, 1.06, 1.29, 1.06, 3.14, 1.29)
Metehan Ünal 27
7. Bunu sadece Wilcoxon işaretli-sıralama testini çalıştırmak için gerçekleştirmeniz gereken bir komut izler:
> test <- wilcox.test(x, y, paired = TRUE, alternative = "greater")
8. Nesne testinin içeriğine bakmak için yapıları aşağıdaki gibi kontrol edin ve bileşenlerin spesifik değerlerine bakın:
> str(test)
> test$p.value
Metehan Ünal 28
• Wilcoxon testi, popülasyon ortalamalarının farklılık gösterip göstermediğini değerlendirmek için ilgili iki örneği karşılaştırmak veya tek bir örnek üzerinde tekrarlanan ölçümleri karşılaştırmak için kullanılır.
• İki yöntemin sonuçlarını karşılaştırmak için kullanılabilir.
• Örneğin, x ve y iki yöntemin performans sonuçları olsun.
• Alternatif hipotezimiz, x'in y’nin sağına kaydırılmasıdır.
• Testin döndürdüğü p değeri, null hipotezin kabul edilmesini veya reddedilmesini kolaylaştırır.
Metehan Ünal 29
Veri Görselleştirme
• Veriler, tablo, matris, metin veya sayılar biçiminde değil, grafik biçiminde
görselleştirilip görüntülemek veriyi daha iyi anlamamızı sağlar.
• Örneğin, İris çiçeğindeki sepal uzunluğun petal uzunluğa nasıl değiştiğini
görmek istiyorsak, sırasıyla x ve y eksenleri boyunca çizebiliriz, eğilimi ve
hatta korelasyonu görselleştirebiliriz.
• Bu kısımda, R'deki verileri görselleştirmenin ve temel R grafik ve çizme
fonksiyonlarını inceleyeceğiz. Ayrıca basit plotting fonksiyonlarını da
tartışacağız.
Metehan Ünal 30
Veri Görselleştirme
• Aşağıda, R'deki bazı temel grafik görselleştirmeleri için adımlar verilmiştir:
1. Bir dağılım grafiği oluşturmak için, iris veri kümenizle başlayın. Burada görmek istediğiniz, sepal uzunluk ve petal uzunluktaki değişimdir. Aşağıdaki komutlarda gösterildiği gibi, y ekseni boyunca sepal uzunluğa (sütun 1) ve x ekseni boyunca petaluzunluğuna (sütun 4) bir plot oluşturunuz:
> sl <- iris[,1]
> pl <- iris[,4]
> plot(x=pl, y=sl, xlab="Petal length", ylab="Sepal length", col="black", main="Varition of sepal length with petal length")
Metehan Ünal 31
Veri Görselleştirme
2. Veriler için bir kutu grafiği oluşturmak için, kutu grafiği fonksiyonunu
aşağıdaki şekilde kullanın:
> boxplot(Sepal.Length~Species, data=iris, ylab="sepal length",
xlab="Species", main="Sepal length for different species")
Metehan Ünal 32
Veri Görselleştirme
3. Bir line-digram çizimi normal plot çizimi ile neredeyse aynıdır. Burada yeni
bir type argümanı vardır ve o argüman l olarak ayarlanır. Bununla birlikte, bunu
aşağıdaki şekilde tasvir etmek için farklı, kendi oluşturduğumuz bir veri kümesi
kullanıyoruz:
> genex <- c(rnorm(100, 1, 0.1), rnorm(100, 2, 0.1), rnorm(50, 3, 0.1))
> plot(x=genex, xlim=c(1,5), type='l', main="line diagram")
Metehan Ünal 33
Veri Görselleştirme
Metehan Ünal 34
Veri Görselleştirme
4. Histogramlar, verilerin yoğunluğunu ve her kategorinin sıklığını
görselleştirmek için kullanılabilir. R'de histogramları çizmek oldukça basittir;
aşağıdaki komutları kullanın:
> x <- rnorm(1000, 3, 0.02)
> hist(x)
Metehan Ünal 35
Veri Görselleştirme
• Çizim/Plot fonksiyonu, ilgili veriyi orijinal veri setinden, sütun numaraları
(sırasıyla, sepal uzunluğu ve petal uzunluğu için sl ve pl) ile çıkarır ve daha
sonra bir dağılım grafiğini (scatter plot) çizer.
• Çizim fonksiyonu daha sonra y ekseni boyunca sepal uzunluğu ve x ekseni
boyunca petal uzunluğunu çizer. Eksen etiketleri sırasıyla xlab ve ylab
argümanıyla atanabilir ve plota ana argüman kullanılarak bir başlık verilebilir.
• Plot/çizim (önceki ekran görüntüsünün A bölümünde) böylece iki değişkenin
daha fazla veya az pozitif korelasyon izlediğini gösterir.
Metehan Ünal 36
• Dağılım grafikleri, bir trend aranıyorsa kullanışlı değildir. Yani bir değerin indisler arasında nasıl ilerlediğini göstermek için kullanılmaz. Örneğin bir genin zaman içerisinde veya bir ilacın yoğunluğuna göre gösterimi. Bir line-diagram bu durumda daha iyi bir gösterim aracıdır.
• Burada, ilk olarak, x ölçeğindeki değerler olan 250 yapay değer kümesi ve endekslerini üretiyoruz. Bu değerler için, önceki bölümde gördüğümüz gibi normal bir dağılım varsayıyoruz. Bu durumda önceki kısımdaki ekran görüntüsündeki B kısmındaki gibi bir grafik çizilir. Aynı çizime aşağıdaki gibi line fonksiyonunu kullanarak daha fazla satır eklemek mümkündür:
> lines(density(x), col="red")
Metehan Ünal 37
• Bir kutu grafiği (box plot), sayısal veriler içeren özellikleri bakımından iki kategori veya grubu karşılaştırmak istiyorsak ilginç bir görselleştirme olabilir.
• Göstermek için, tekrar iris verilerini ele alalım. Bu verilerdeki türlerin adını biliyoruz (sütun 5).
• Şimdi, bu türlerin sepal uzunluğunu, hangisinin en uzun sepal'a sahip olduğu ve sepal uzunluğunun türler içinde ve arasında nasıl değiştiği gibi verileri elde etmek için birbirleriyle karşılaştırmak istiyoruz.
• Veri tablosu tüm bu bilgilere sahiptir, ancak kolayca gözlemlenemez.
Metehan Ünal 38
• Boxplot fonksiyonu, neyin çizileceğini ve neyin karşılanacağını belirleyen ilk argümana sahiptir.
• Bu, ikinci argüman olan veri çerçevesinin sütun isimleri cinsinden verilebilir.
• Diğer argümanlar diğer plot fonksiyonları ile aynıdır.
• Ortaya çıkan grafik (önceki ekran görüntüsünün B bölümünde gösterildiği gibi) verilerimizdeki üç tür için x ekseni boyunca üç kutu gösterir.
• Bu kutuların her biri çeyrek aralıkları ve karşılık gelen sepal uzunlukların ortancasını göstermektedir.
Metehan Ünal 39
• Histogram (önceki ekran görüntüsünün D bölümü) verilerin dağılımını
gösterir.
• Gördüğümüz gibi, veriler normalde 3 ortalama ile dağıtılır; Bu nedenle, plot
yaklaşık 3 etrafında tepe ile bir çan şekli görüntüler.
• Çan şeklini görmek için plot(density(x)) fonksiyonunu deneyin.
Metehan Ünal 40
• Tüm veri çerçevesi için plot fonksiyonunu kullanabilirsiniz (bunu iris veri
kümesi, plot(iris) için yapmayı deneyin). Bir matris gibi çiftli grafik
göreceksiniz.
• Bunun yanında, R'de "ggplot2" ve "plotrix" gibi farklı yüksek kaliteli grafikler
için birçok başka paket bulunmaktadır.
• Gerektiğinde sonraki bölümlerde tartışılacaktır.
Metehan Ünal 41
BioMart’tan Veri Alma
• Burada, Durinck ve arkadaşları tarafından geliştirilen biomaRt adlı başka bir
R paketi göreceğiz.
• BioMart paketini uygulayan veritabanı koleksiyonuna bir arayüz sağlar
(http://www.biomart.org).
• Ensembl (genler ve genomlar), Uniprot (proteinler hakkında bilgi), HGNC
(gen isimlendirme), Gramene (bitki fonksiyonel genomikleri) ve Wormbase
(C. elegans hakkında bilgi) gibi bir dizi BioMart veritabanından veri
alınmasını sağlar.
Metehan Ünal 42
• Devam etmek için önkoşullar şunlardır:
• BiomaRt kütüphanesini kurun ve oturuma yükleyin.
• Almak istediğiniz veri ID’lerini ve isimlerini oluşturun.
Metehan Ünal 43
• Gen IDsinin HGNC'den alınması, öncelikle mart’ın (veri kaynağı) ayarlanması ve daha sonra bu marttan genlerin elde edilmesi adımlarını içerir. Aşağıdaki adımlar izlenerek gerçekleştirilir:
1. biomaRt'i kullanmaya başlamadan önce, paketi kurun ve R oturumuna yükleyin. Paketdoğrudan Bioconductor'dan aşağıdaki komut dosyası ile kurulabilir. Bir sonraki bölümdeBioconductor hakkında daha fazla bilgi edineceğiz; Şimdilik, aşağıdaki kuruluma bir göz atın:
> source("http://bioconductor.org/biocLite.R")
> biocLite("biomaRt")
> library(biomaRt)
Metehan Ünal 44
• Not: R versiyonunuz 3.5’ten yukarıdaysa Bioconductor yüklemesi için aşağıdaki adımları yapınız:
>if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install()
>BiocManager::install(c("biomaRt"))
> library(biomaRt)
Metehan Ünal 45
2. Sorgunuz için doğru veri tabanını tanımlayarak alım için uygun martı seçin. Burada
insan topluluğu/ensembl genlerini arayacaksınız; bu nedenle, useMart işlevini aşağıdaki
gibi çalıştırın:
> mart <- useMart(biomart = "ensembl", dataset ="hsapiens_gene_ensembl")
3. Şimdi, daha önce seçmiş olduğunuz ensembl verilerinden genlerin listesini aşağıda
göreceksiniz:
> my_results <- getBM(attributes = c("hgnc_symbol"), mart = mart)
Metehan Ünal 46
4. Alınan genlerden 50 tane geni aşağıdaki gibi örnekleyebilirsiniz:
> N <- 50
> mysample <- sample(my_results$hgnc_symbol,N)
> head(mysample)
5. biomaRt paketi ayrıca aşağıdaki komutlarda gösterildiği gibi bir genin (örn. BRCA1)veritabanlarından sekansları almak için de kullanılabilir:
> seq <- getSequence(id="BRCA1", type="hgnc_symbol", seqType="peptide", mart = mart)
> show(seq)
Metehan Ünal 47
6. Kromozom pozisyonunu belirten bir sekans almak için, pozisyon aralığı (bir
bölgeden aşağı ve yukarı akış) aşağıdaki gibi kullanılabilir:
> seq2 <- getSequence(id="ENST00000520540", type=
'ensembl_transcript_id', seqType='gene_flank',upstream = 30, mart = mart)
7. Dizilimi görmek için, show fonksiyonu aşağıdaki gibi kullanın:
> show(seq2)
Metehan Ünal 48
• R'deki source fonksiyonu, kaynak dosyadaki yeni bir fonksiyon kümesini R
oturumuna yükler.
• Ayrıca, kurulum sırasında R sizden önceden kurulmuş olan Bioconductor
kitaplıklarını güncellemenizi isteyebilir.
• Bu kütüphaneleri gereksinimlerinize göre seçebilirsiniz.
Metehan Ünal 49
• BiomaRt paketi, daha önce tarif edildiği gibi BioMart veri tabanı ile birlikte
çalışır.
• Öncelikle ilgilenilen martı seçer (bu nedenle, belirli bir sorgu için martımızı
seçmeliyiz).
• Sonra, bu mart, BioMart veritabanındaki sorguyu aramak için kullanılır.
• Daha sonra sonuçlar döndürülür ve geri dönüş değeri için biçimlendirilir.
• Böylece paket, BioMart sistemi için bir arayüz sağlar.
Metehan Ünal 50
• Böylece, biomaRt paketi veritabanını arayabilir ve çeşitli biyolojik verileri
alabilir.
• Veriler ilgili veritabanından geleneksel yolla indirilebilir olsa da, biomaRt,
toplu işlemler için bir otomatik yapı sağlar.
Metehan Ünal 51
• BiomaRt paketi ayrıca bir gen ID’sini başka tip ID'lere dönüştürmek için kullanılabilir.
• Burada, aşağıdaki kod parçasıyla RefSeq ID'lerin gen sembollerine dönüştürülmesini gösterilmektedir:
> mart <- useMart(biomart = "ensembl", dataset = "hsapiens_gene_ensembl")
> geneList <- read.csv("mylist.csv")
> results <- getBM(attributes = c("refseq_mrna", "hgnc_symbol"), filters
= "refseq_mrna", values = geneList[,2], mart = mart)
> results
Metehan Ünal 52
• BiomaRt, çalışmamızın çoğunda biyolojik varlıklar için kimlik bilgilerinin
dönüşümünü mümkün kılsa da, bu kitapta, aynı zamanda bir sonraki
bölümde açıklanacak diğer bazı paketleri de kullanıyoruz.
Metehan Ünal 53
FIN
Metehan Ünal 54