安裝使用pyclone進行克隆演化推斷

pyclone介紹

  能夠根據多個樣品突變的allele frequency 和 copy number,推斷出有該突變的細胞克隆所佔的比例(cellular prevalence)在不一樣樣品間的變化。好比:

每一個cluster包括一些突變,它們在各個樣品中克隆比例有着一致的變化html

安裝Conda

從官網下載Conda
有兩個選擇,一個是帶有python 2.7的Miniconda ,帶有python 3.6的Miniconda3 ,經本人電腦測試Miniconda3使用pyclone會出現問題,所以建議安裝帶python2.7的Miniconda
直接bash下載的文件安裝
Miniconda2-latest-Linux-x86_64.sh
按照操做,第一步輸入yes贊成協議,而後能夠選擇安裝路徑,默認本地家目錄,同時相應的python也會自動安裝到目錄python

安裝pyclone

按照官網說明安裝pyclone
conda install pyclone -c aroth85
成功運行以下算法

[ywliao@WS02 utilities]$ PyClone 
usage: PyClone [-h] [--version]
               {setup_analysis,run_analysis,run_analysis_pipeline,build_mutations_file,plot_clusters,plot_loci,build_table}
               ...
PyClone: error: too few arguments

運行測試文件

進入test/examples文件夾bootstrap

PyClone run_analysis_pipeline --in_files SRR385938.tsv SRR385939.tsv SRR385940.tsv SRR385941.tsv --working_dir pyclone_analysis

在pyclone_analysis文件下會生成以下文件夾或文件bash

config.yaml   #指定用於PyClone分析的設置文件
plots/    #包括生成的所有圖
tables/   #包括生成的所有表格
trace/    #包括MCMC抽樣算法的原始痕跡
yaml/   #存放yaml突變文件的文件夾,用於PyClone分析

輸入的tsv文件的格式

tab分隔存在header的文件,包括如下幾列app

  • mutation_id,一個可以識別突變的單一ID,好比chr22:12345或者TP53_chr17:753342
  • ref_counts,突變位點的reference reads數
  • var_counts,突變位點的variant reads數
  • normal_cn,正常population的細胞拷貝數,對於人類常染色體來講是2,對於人類性染色體來講是1或2
  • minor_cn, 腫瘤細胞的minor拷貝數,通常從WGSS或者芯片的數據預測出
  • major_cn,腫瘤細胞的major拷貝數,通常從WGSS或者芯片的數據預測出

若是你沒有minor copy number 和 major copy number,那麼minor copy number設爲0而major copy number設置爲預測的總的拷貝數。
除了上述的列,其它列會自動忽略
使用PyClone run_analysis_pipeline -h查看幫助python2.7

繪製進化樹

若是pyclone的可視化沒法知足你的須要,好比說你須要繪製進化樹,可使用supra hex;能夠參考http://suprahex.r-forge.r-project.org/demo-PyClone.html
這裏提供一個將pyclone中的loci.tsv結果文件轉換成supr hex能直接處理的矩陣的R函數函數

library(data.table)
library(supraHex)

Loci_tsv_To_Input <- function(dt){
  dc <- dcast(dt, formula = mutation_id ~ sample_id, value.var = "cellular_prevalence")
  dt_out <- dc[,-1]
  rownames(dt_out) <- dc[,1]
  return(as.matrix(dt_out))
}

dt <- fread("~/project/PE/Clone/tsv/Guoyuqin/tables/loci.tsv")
data <- Loci_tsv_To_Input(dt)

#build and visualise the bootstrapped tree
tree_bs <- visTreeBootstrap(t(data))

參考資料

pyclone usage:https://bitbucket.org/aroth85/pyclone/wiki/Usage
pyclone文獻:https://www.nature.com/articles/nmeth.2883
suprahex處理pyclone結果:http://suprahex.r-forge.r-project.org/demo-PyClone.html測試

個人博客即將搬運同步至騰訊雲+社區,邀請你們一同入駐:https://cloud.tencent.com/developer/support-plan?invite_code=204kmo4ijrwg0

相關文章
相關標籤/搜索