pyclone介紹
可以根據多個樣品突變的allele frequency 和 copy number,推斷出有該突變的細胞克隆所占的比例(cellular prevalence)在不同樣品間的變化。比如:
每個cluster包括一些突變,它們在各個樣品中克隆比例有着一致的變化
安裝Conda
從官網下載Conda
有兩個選擇,一個是帶有python 2.7的Miniconda ,帶有python 3.6的Miniconda3 ,經本人電腦測試Miniconda3使用pyclone會出現問題,因此建議安裝帶python2.7的Miniconda
直接bash下載的文件安裝
Miniconda2-latest-Linux-x86_64.sh
按照操作,第一步輸入yes同意協議,然后可以選擇安裝路徑,默認本地家目錄,同時相應的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文件夾
PyClone run_analysis_pipeline --in_files SRR385938.tsv SRR385939.tsv SRR385940.tsv SRR385941.tsv --working_dir pyclone_analysis
在pyclone_analysis文件下會生成如下文件夾或文件
config.yaml #指定用於PyClone分析的設置文件
plots/ #包括生成的全部圖
tables/ #包括生成的全部表格
trace/ #包括MCMC抽樣算法的原始痕跡
yaml/ #存放yaml突變文件的文件夾,用於PyClone分析
輸入的tsv文件的格式
tab分隔存在header的文件,包括以下幾列
- 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
查看幫助
繪制進化樹
如果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