面对大量的SNV突变数据你是否还觉得无从下手,不知道怎么分析合适?今天给大家介绍一个R包-deconstructSigs。这款R包是基于大样本量预测的signature解析突变特征。在很多文献中都有用到,那么今天就让我们学习起来吧!
一、安装软件包和下载基因组数据
代码语言:javascript复制source('http://bioconductor.org/biocLite.R');
install.packages('deconstructSigs')
# dependencies 'BSgenome', 'BSgenome.Hsapiens.UCSC.hg19'
BiocInstaller::biocLite('BSgenome')
BiocInstaller::biocLite('BSgenome.Hsapiens.UCSC.hg19')
二、加载R包
代码语言:javascript复制library(deconstructSigs)
三、输入文件格式和释义
文件格式必须包含以下几列:
sample identifier | sample.id |
---|---|
chromosome | chr |
base position | pos |
reference base | ref |
alternate base | alt |
R中查看数据:
代码语言:javascript复制head(sample.mut.ref)
Sample chr pos ref alt
1 1 chr1 905907 A T
2 1 chr1 1192480 C A
3 1 chr1 1854885 G C
4 1 chr1 9713992 G A
5 1 chr1 12908093 C A
6 1 chr1 17257855 C T
四、利用mut.to.sigs.input构建输入文件
代码语言:javascript复制sigs.input <- mut.to.sigs.input(mut.ref = sample.mut.ref,
sample.id = "Sample",
chr = "chr",
pos = "pos",
ref = "ref",
alt = "alt")
mut.to.sigs.input参数释义
代码语言:javascript复制mut.ref # 突变文件
sample.id # 突变文件中的样品列名
chr # 突变文件中的染色体列名
pos # 突变文件中的突变位置列名
ref # 突变文件中的参考基因组碱基列名
alt # 突变文件中的突变碱基列名
bsg # 参考基因组
五、利用whichSignatures进行Signature 预测
代码语言:javascript复制sample_1 = whichSignatures(tumor.ref = sigs.input,
signatures.ref = signatures.nature2013,
sample.id = 1,
contexts.needed = TRUE,
tri.counts.method = 'default')
sample_2 = whichSignatures(tumor.ref = sigs.input,
signatures.ref = signatures.nature2013,
sample.id = 2,
contexts.needed = TRUE,
tri.counts.method = 'default')
whichSignatures参数释义
代码语言:javascript复制tumor.ref # 上一步生成突变文件,数据为数据框或文本,横行是样本,纵行是突变碱基上下文序列
sample.id # 样品名称,tumor.ref文件的行名
signatures.ref # 预测的已知signatures参考文件,包括signatures.nature2013或者signatures.cosmic
associated # 相关联的signature vector,默认为空
signatures.limit # 关联的signature上限,默认无限制
signature.cutoff # 舍弃小于此阈值的关联signature
contexts.needed # 是否需要突变上下文
tri.counts.method # 三核酸序列标准化,默认为“default”:不进行标准化
# tri.counts.method可设置为"default","exome","genome","exome2genome","genome2exome" 或自定义
六、 利用plotSignatures绘图
代码语言:javascript复制plot_example <- whichSignatures(tumor.ref = randomly.generated.tumors,
signatures.ref = signatures.nature2013,
sample.id = 13)
# Plot output
plotSignatures(plot_example, sub = 'example')
plotSignatures参数释义
代码语言:javascript复制sigs.output # 上一步生成的signature文件
sub # 显示样本名后副标题
七、makePie绘制signature比例饼图
代码语言:javascript复制makePie(plot_example, sub = 'example')
参数同plotSignatures
代码语言:javascript复制sigs.output # 上一步生成的signature文件
sub # 显示样本名后副标题
好了,今天的测试就结束了,小伙伴们快上手试试吧!