前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >maftools--肿瘤突变数据分析最强大的工具

maftools--肿瘤突变数据分析最强大的工具

作者头像
作图丫
发布2022-03-29 14:13:40
6.3K1
发布2022-03-29 14:13:40
举报
文章被收录于专栏:作图丫

导语

GUIDE ╲

癌症的异质性和复杂性对于癌症的治疗研究一直是重大的限制,为了解决这一问题,就需要我们了解各个患者的肿瘤基因变异情况,通过肿瘤突变谱的研究可以显示出癌症之间的高度分子异质性。

背景介绍

随着肿瘤基因组学的发展,突变注释格式(MAF)被广泛接受,并用于存储检测到的体细胞变异数据。TCGA已对30多种不同的癌症进行了测序,每种癌症类型的样本量均超过200个。由体细胞突变组成的结果数据以突变注释格式的形式存储。

maftools软件包可以用有效的方式从TCGA及其他来源汇总,分析,注释和可视化MAF文件,只要数据为MAF格式即可。maftools函数可以主要分为可视化和分析模块,用法很简单,只需使用read.maf读取我们的MAF文件(以及可用的副本数据),然后将生成的MAF对象传递给所需的函数进行绘图或分析。

R包安装

代码语言:javascript
复制
#用bioconductor安装R包
if (!require("BiocManager"))
  install.packages("BiocManager")
BiocManager::install("maftools")
library(maftools)

可视化介绍

01

数据展示

载入TCGA maf数据

代码语言:javascript
复制
#TCGA maf文件路径
laml.maf = system.file('extdata', 'tcga_laml.maf.gz', package = 'maftools') 
#载入临床信息(可选择)
laml.clin = system.file('extdata', 'tcga_laml_annot.tsv', package = 'maftools') 
laml = read.maf(maf = laml.maf, clinicalData = laml.clin)
laml
#展示样本信息
getSampleSummary(laml)
#展示基因信息
getGeneSummary(laml)
#临床和样本关联信息
getClinicalData(laml)
#展示MAF文件的各个变量
getFields(laml)

02

maftools的基本可视化功能

绘制MAF的摘要图

我们可以使用plotmafSummary来绘制maf文件的摘要,该文件将样本中的突变数量显示为堆叠条形图,将突变类型显示为由Variant_Classification总结的箱形图。

代码语言:javascript
复制
plotmafSummary(maf = laml, rmOutlier = TRUE, addStat = 'median', dashboard = TRUE, titvRaw = FALSE)

绘制瀑布图

oncoplot可以用于排名前十位的基因,可以更好地展示maf文件,也成为瀑布图。标注为Multi_Hit的突变是在同一样本中多次突变的基因。

代码语言:javascript
复制
oncoplot(maf = laml, top = 10)

titv函数将SNPs区分为Transition and Transversions两种类型, 汇总的数据可以可视化为表示六个不同转化的总体分布的箱形图,以及表示每个样本中转化率的堆叠式直方图。

代码语言:javascript
复制
laml.titv = titv(maf = laml, plot = FALSE, useSyn = TRUE)
#绘制titv summary图
plotTiTv(res = laml.titv)

表示氨基酸转换的棒棒糖图

lollipopPlot函数要求我们在maf文件中存有氨基酸转变信息。但是,MAF文件在命名氨基酸变化字段方面没有明确的原则,不同的研究对氨基酸变化的字段(或列)名称也有不同的称呼。默认情况下,lollipopPlot会查找列AAChange,如果在MAF文件中未找到该列,将打印所有可用字段并显示warning。

在示例中,我们将绘制DNMT3A(白血病中常见的突变基因)的棒棒糖图。默认情况下,lollipopPlot使用该基因的最长异构体。

代码语言:javascript
复制
#MAF文件包含字段/列名称为“ Protein_Change”的氨基酸变化。我们将使用参数AACol手动指定。
lollipopPlot(maf = laml, gene = 'DNMT3A', AACol = 'Protein_Change', showMutationRate = TRUE)

降雨图

实体瘤的特征是具有局部超突变的基因组位点,可以通过在线性基因组尺度上绘制变异距离来可视化这种超突变的基因组区域。这些图通常称为降雨图,我们可以使用rainfallPlot绘制这类图形。

代码语言:javascript
复制
##tcga乳腺癌数据
brca <- system.file("extdata", "brca.maf.gz", package = "maftools")
brca = read.maf(maf = brca, verbose = FALSE)
##绘图
rainfallPlot(maf = brca, detectChangePoints = TRUE, pointSize = 0.4)

与TCGA数据比较突变负荷

tcgaCompare使用TCGA MC3的突变负荷将突变负荷与33个TCGA队列进行比较。

代码语言:javascript
复制
laml.mutload = tcgaCompare(maf = laml, cohortName = 'Example-LAML', logscale = TRUE, capture_size = 50)

genome plot

代码语言:javascript
复制
##读取和统计gistic输出文件
all.lesions <- system.file("extdata", "all_lesions.conf_99.txt", package = "maftools")
amp.genes <- system.file("extdata", "amp_genes.conf_99.txt", package = "maftools")
del.genes <- system.file("extdata", "del_genes.conf_99.txt", package = "maftools")
scores.gis <- system.file("extdata", "scores.gistic", package = "maftools")
laml.gistic = readGistic(gisticAllLesionsFile = all.lesions, gisticAmpGenesFile = amp.genes, gisticDelGenesFile = del.genes, gisticScoresFile = scores.gis, isTCGA = TRUE)
##gisticChromPlot绘图
gisticChromPlot(gistic = laml.gistic, markBands = "all")

Bubble plot

代码语言:javascript
复制
gisticBubblePlot(gistic = laml.gistic)

oncoplot

代码语言:javascript
复制
gisticOncoPlot(gistic = laml.gistic, clinicalData = getClinicalData(x = laml), clinicalFeatures = 'FAB_classification', sortByAnnotation = TRUE, top = 10)

可视化CBS区段

代码语言:javascript
复制
tcga.ab.009.seg <- system.file("extdata", "TCGA.AB.3009.hg19.seg.txt", package = "maftools")
plotCBSsegments(cbsFile = tcga.ab.009.seg)

体细胞互作

使用somaticInteractions函数检测相互排斥或同时存在的一组基因。

代码语言:javascript
复制
somaticInteractions(maf = laml, top = 25, pvalue = c(0.05, 0.1))

生存分析

代码语言:javascript
复制
##基于DNMT3A突变状态分组的生存分析
mafSurvival(maf = laml, genes = 'DNMT3A', time = 'days_to_last_followup', Status = 'Overall_Survival_Status', isTCGA = TRUE)

临床富集分析

临床富集可以对与样本相关的任何临床特征进行分析

代码语言:javascript
复制
fab.ce = clinicalEnrichment(maf = laml, clinicalFeature = 'FAB_classification')
plotEnrichmentResults(enrich_res = fab.ce, pVal = 0.05, geneFontSize = 1, annoFontSize = 0.6)

与癌症相关的信号通路分析

使用OncogenicPathways可以统计TCGA队列中已知的致癌信号通路。

代码语言:javascript
复制
OncogenicPathways(maf = laml)
#展示RTK-RAS信号通路,抑癌基因为红色,致癌基因为蓝色
PlotOncogenicPathways(maf = laml, pathways = "RTK-RAS")

R包参考:

http://bioconductor.org/packages/release/bioc/vignettes/maftools/inst/doc/maftools.html

小编总结

maftools包在TCGA突变数据的分析和可视化上具有强大的功能,是目前突变数据处理应用最广泛的R包,这对于我们利用公共数据集了解各个患者的肿瘤基因变异情况非常有帮助!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-05-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作图丫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • genome plot
  • Bubble plot
  • 临床富集分析
相关产品与服务
云硬盘
云硬盘(Cloud Block Storage,CBS)为您提供用于 CVM 的持久性数据块级存储服务。云硬盘中的数据自动地在可用区内以多副本冗余方式存储,避免数据的单点故障风险,提供高达99.9999999%的数据可靠性。同时提供多种类型及规格,满足稳定低延迟的存储性能要求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档