专栏首页yw的数据分析安装使用pyclone进行克隆演化推断

安装使用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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux下指定pip install和make install安装路径

    用户1680321
  • R语言实现定性资料的秩和检验

    定性资料比如等级,毒性,应答等,可以以具有分级的因子的形式表示,比如(+ ++, +++),分别对应因子的1,2,3种水平,这样不同组样本只要看这些数据的等级的...

    用户1680321
  • ggplot2 aes函数map到data笔记

    用户1680321
  • 如何设置CentOS 7获取动态IP和静态IP

    1.输入“ip addr”并按回车键确定,发现无法获取IP(CentOS 7默认没有ifconfig命令),记录下网卡名称(本例中为ens33)。

    yaohong
  • springboot任务之定时任务

    在启动入口上加上@EnableScheduling ,在需要定时的方法上加上@Scheduled注解

    绝命生
  • 黑科技 | VR工具化,不妨从这款智能可穿戴手套开始

    镁客网
  • 你可能不知道的 Django Rest Framework 的两个新特性

    前端、甚至大前端发展如此火爆的 2017 年(我相信 2018 年一样)刚过去,像 MVC 架构那样直接使用后端模板渲染前端页面的方式已经不被推崇了(当然有些场...

    临书
  • 超3000个特效镜头,复联4是怎么在短时间里完成的?

    期盼已久的《复仇者联盟:终局之战》终于上映了!近300万人在国内午夜零点场熬夜观看。

    新智元
  • riot.js教程【三】访问DOM元素、使用jquery、mount输入参数、riotjs标签的生命周期

    前文回顾 riot.js教程【二】组件撰写准则、预处理器、标签样式和装配方法; riot.js教程【一】简介; 访问DOM元素 你可以通过this.ref...

    liulun
  • 双十一购物 || Python监控商品价格 插件监控

    双11马上就要到了,各种盖楼,领红包,砍价的活动已经开始。本想着靠着各种优惠能便宜入手一些东西,没想到的是一顿操作猛如虎,最后优惠两毛五,甚至有可能比双十一之前...

    啤酒单恋小龙虾

扫码关注云+社区

领取腾讯云代金券