Koeken——使LEfSe分析更便捷

Koeken——使LEfSe分析更便捷
上一篇為LEfSe分析寫了教程,包括LEfSe計算原理概述、輸入檔案如何準備、線上Galaxy平臺執行LEfSe、本地LEfSe工具的安裝使用以及對結果的說明等。因此,對LEfSe的基礎部分可參考前文
特別提到了如何由OTU丰度錶轉換獲得LEfSe的輸入檔案,並提供了轉換的程式碼。轉換過程中藉助QIIME工具實現各分類水平的統計,需要事先將txt格式的OTU丰度錶轉換為biom格式以方便使QIIME識別。
既然已經將OTU錶轉換為biom格式,並也已安裝了QIIMELEfSe程式,那就繼續延伸一個工具,Koeken,是為LEfSe分析提供的包裝器。KoekenQIIMELEfSe結合在一起,為從QIIME OTU表到微生物類群生物標誌物的鑑定提供了更便捷的工作流程,輸入biom格式的帶註釋OTU丰度表和帶有分組資訊的mapping檔案,即可直接執行獲得LEfSe分析結果。
Koekengithub連結:https://github.com/twbattaglia/koeken
本篇簡介Koeken的安裝和使用過程。
Koeken的安裝
首先安裝Koeken
#使用 pip 安裝 Koeken

pip install https://github.com/twbattaglia/koeken/zipball/master

koeken.py –help
#或者編譯安裝

wget https://codeload.github.com/twbattaglia/koeken/zip/master

unzip master

cd koeken-master

python setup.py install

koeken.py –help
#或者 conda 安裝

conda install Koeken

koeken.py –help

檔案準備
Koeken的輸入檔案包括OTU丰度表和樣本分組檔案。
OTU錶轉化為biom格式,用過QIIME的同學應該對它不陌生;樣本分組資訊包含在mapping檔案裡,mapping檔案也是QIIME的標準配置檔案。
對於biom格式和mapping檔案的簡介可參考QIIME文件:
http://qiime.org/documentation/file_formats.html#mapping-file-overview
某試驗對微生物群落新增某種處理,分為對照組和處理組,並在處理後的第234天取樣,16S高通量測序獲得細菌群落資料。
#示例資料可獲取自 https://pan.baidu.com/s/1ctwyoTqT1ofygMUnTj7CPA

#otu_table.txt,OTU 丰度表

#otu_tax.txt,OTU 註釋檔案,資料庫隨意

#mapping.txt,QIIME 的 mapping 配置檔案,含樣本分組資訊
#常見的 OTU 丰度錶轉為 biom 格式,並新增 OTU 註釋資訊

cp otu_table.txt otu_table.tsv

sed -i '1i\# Constructed from biom file' otu_table.tsv

biom convert -i otu_table.tsv -o otu_table.biom –table-type="OTU table" –to-json

biom add-metadata -i otu_table.biom –observation-metadata-fp otu_tax.txt -o otu_table.tax.biom \

–sc-separated taxonomy –observation-header OTUID,taxonomy

執行Koeken
我們期望在每個時間點,比較處理和對照的細菌群落差異,從中找到最具代表性的差異類群。
然後以下是一個簡單示例,展示Koeken執行。分別代表時間和處理的變數,DayTreatment,已經新增在mapping檔案中,分析時指定該列即可。
#執行 Koeken 的一個簡單示例,細節引數詳見 koeken.py –help

#例如,設定統計檢驗顯著性 p 值 0.05,LDA 得分值 2.0

koeken.py –input otu_table.tax.biom –map mapping.txt –output koeken_out \

–class Treatment –split Day –level 6 –pval 0.05 –effect 2 –clade –image pdf

結果目錄“koeken_out/lefse_output/run_lefse”裡面,即為本次分析結果。
同前文LEfSe分析,對於統計結果檔案,內容結構和LEfSe標準輸出一致。
對於每個時間點的比較分析,各自輸出一個統計結果檔案。這也是Koeken的一個優勢,允許一次同時並行分析多批次的資料,提高效率;同時各批次結果也能分開給出,便於我們各自比較。

1列,每種微生物類群名稱;“Other”沒有自動去除,可手動過濾一下;
2列,每種微生物類群在各分組類別中丰度平均值中最大值的log10(不過這不是原始丰度,而是標準化後的丰度,LEfSe自己有套標準化方法);
3列,若該微生物類群存在組間顯著差異,且線性判別得分(LDA score)高於設定閾值,則該列展示其所富集的分組類別名稱;若不存在顯著差異,則該列為空;
4列,若該微生物類群存在組間顯著差異,且線性判別得分高於設定閾值,則該列展示其線性判別得分值,用以評估其對觀測到的組間差異的效應大小,該值越高代表該微生物類群越重要;若不存在顯著差異,則該列為空;
5列,統計檢驗的p值,若顯著,則將這些微生物作為解釋類別之間差異的biomaker來看待;若不顯著,則該列值為“”。
使用該結果進一步作圖,以圖形方式展示了由分層要素名稱指定的分類樹中發現的biomaker,見“koeken_out/lefse_output/run_lefse/cladograms”。
圖中每一個節點代表一種給定的微生物類群,對於不顯著的微生物使用黃色節點標註,顯著的則賦予其它顏色,顏色代表了其富集的分組,即表明這些分支在某些分組中具有更高的丰度。

不過由於上述結果表格沒有自動過濾一些不重要的類群(如Other等),所以作圖結果中的點很密集,很不好看。
此時不妨手動過濾一下上述結果表格,將其中的一部分不顯著的微生物類群去除,之後再將編輯後的表讀入LEfSe程式作圖。如前文LEfSe教程所述,可以使用Galaxy雲平臺,也可使用本地版的LEfSe,過濾不重要資料後表格的出圖效果應該會“整齊”很多。
連結

相關文章