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