R語言遇上Oncomine,必然會碰撞出不一樣的火花。
大家好,我是學員無名小卒。眾所周知,與TCGA齊名腫瘤樣本資料庫Oncomine,著實是觸摸腫瘤數據挖掘的一把利器。至於如何在這個深海挖寶,因解螺旋所研發的科研技能單元課《Oncomine資料庫使用教程》,已提供了一份傻瓜式視頻教程供大家「食」用,本文就不再一一贅述了。
而我通過此課程的淬鍊,雖然談不上小有所成,但已然能做到和Oncomine資料庫愉快的玩耍,如從Oncomine資料庫下載數據就已變得越發的得心應手。而今日我就將Oncomine的數據下載、R語言包Oncomine的具體使用教程分享給大家,與君共勉。
打開Oncomine網頁,在基因搜索框內輸入EGFR,再輸入Bladder Cancer,可進入到一個條形型圖的網頁,當把滑鼠放在條形圖上時,會出現黃色的浮標,來提示一些數據信息,此為我們要獲取的數據。
隨後在條形圖上右鍵(Note:是在條形圖上右鍵,不是在空白的地方),在谷歌瀏覽器中選擇檢查,就會彈出了一個方框;點擊方框中Elements選項,就可看到所有的數據,其格式非常整齊。
細看每個條目,其都是以<area開頭的,即為網頁的節點(nodes)。將滑鼠的滑輪網上滑動,可看到area的上級<map,點擊<map前的倒三角,可把下面<area的數據全部打開。
隨後,滑鼠左鍵選中<map行,在此行上點擊滑鼠右鍵,選擇Copy中的Copy outerHTML拷貝數據,並將其放在txt或doc的文檔中即完成了Oncomine數據下載。
1.打開R,安裝Oncomine()語言包。
2.條形圖數據下載分析
打開Oncomine網頁,在基因搜索框內輸入EGFR,再輸入Bladder Cancer,可以看到一個條形型圖的網頁,利用上面的方法獲取數據,並保存為F盤的Oncomine文件中的data1.txt,那麼通過以下命令就可獲得條形圖的具體信息。
3.熱圖 1:一個基因在多個疾病中的表達
打開Oncomine網頁,在基因搜索框內輸入EGFR,可以看到一個熱圖,其標題為Disease Summary for EGFR,可以看到如圖的左邊有很多種疾病,顯然這是看一個基因在多種疾病中的表達的情況。
如果你關掉了剛剛filter中的Bladder Cancer,那麼得到的結果仍是條形圖,此時請點擊網頁的右上角Over view,再選擇 Gene Summary View來獲取相應數據。
4.熱圖2:一個疾病中多個基因表達的情況
打開Oncomine網頁,在基因搜索框內輸入Bladder Cancer,可看到一個熱圖,其標題為Comparison of All Genes in Als Bladder,可以看到如圖的左邊有很多種基因,顯然這是看一個疾病多種基因的表達情況。
5.熱圖3:多個研究比較的meta分析
在4的情況中,隨便選擇幾個研究,然後點 compare。
6.熱圖4:多個基因的共表達
打開Oncomine網頁,在基因搜索框內輸入EGFR,然後在選擇Coexpression Analysis,這時我們可以看到一個熱圖,其標題為Genes Coexpressed with EGFR in Vivanco CellLine,可以看到如圖的第一行的EGFR,下面很多行是其它基因,顯然這是看基因共表達的情況。
7.箱圖
8.共表達相關係數
首先,我們需要把相關係數和基因名稱一起截圖,並保存下來,多餘的信息不要截取,保存在F盤下Oncomine文件裡,取名1.jpg,如下圖:
其實這裡要做的就是OCR(Optical Character Recognition,光學字符識別),在R中有兩個函數可以做OCR,一個是tesseract包的ocr函數,一個是magick包中的image_ocr函數,經過比較,我發現magick::image_ocr比tesseract::ocr讀的結果更好,當然要設置適當的參數。
數據雖已經識別出來了,但是還有一些不完美或者錯誤的地方,尤其是基因名稱,需要仔細核對一下。至於怎麼把這個轉換成表格,方法就很多了,比如word裡面的文本轉表格功能,但前提一定要把文本整理好,這裡就不介紹了,下面演示的是我的方法。
可以看到合併後的行數348,比合併前的行數252多了好多行,此時可用去重複的命令unique看一下哪些重複了。
因為重複的Gene會有相同的名稱,但是有不同相關係數,則可以看到橫線「-」以及EGFR、PHLDA1和CORO1C是重複的,下面我們把「-」、EGFR、PHLDA1和CORO1C去掉,再合併一下。
對於重複的數據也可以有其他處理辦法,這裡就不展開了。
至此,所有的數據就都下載完了。
1.能夠把數據拷貝下來是關鍵,可以放在txt、doc、docx裡面。
2.命令總結:
Oncomine_bar( )
命令最後是bar,用於獲取條形圖數據;
Oncomine_box( )
命令最後是box,用於獲取箱圖數據;
Oncomine_heatmap_GenesCoexpression( )
命令最後是Coexpression,用於獲取共表達數據 ;
Oncomine_heatmap_ComparssionOfAllGenes_meta( )
命令最後是meta,用於獲取共多種基因或者多種疾病比較的meta分析的數據 ;
Oncomine_heatmap_ComparisonofAllGenesin_SomeDisease( )
命令最後是SomeDisease,用於獲取一種疾病中基因表達的數據 ;
Oncomine_heatmap_DiseaseSummaryfor_SomeGene( )
命令最後是SomeGene,用於獲取一種基因在多種疾病中表達的數據。
3.如果做出來的結果出現紅色的提示
說明有的數據是沒有被測量的,即Not measured,被轉變成NA(not acquired)需要仔細關注一下。