安装使用pyclone进行克隆演化推断

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

我的博客即将搬运同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=204kmo4ijrwg0

posted @ 2018-03-08 13:44  ywliao  阅读(3832)  评论(0编辑  收藏  举报