内容

1概述

SGSeq提供从RNA-seq数据分析剪接事件的函数和数据结构。概述SGSeq类以及它们之间的关系如图1所示,并总结如下:

如果你使用SGSeq,请注明:

图1。SGSeq数据结构概述。(a)说明转录本、离散转录本特征、剪接图和由可选剪接变体组成的剪接事件的示意图。剪接事件定义在一个增强图中,每个基因都有一个唯一的源节点和汇聚节点,分别连接到可选的开始和结束节点(虚线)。(b) (a)中所示概念的SGSeq表示。类以粗体和轮廓显示,函数名以斜体显示。虚线箭头表示函数analyzeFeatures()和analyzeVariants(),它们包含多个分析步骤。SGSeq广泛使用Bioconductor基础设施进行基因组范围(Lawrence et al. 2013): TxFeatures和SGFeatures扩展GRanges, sgvariations扩展CompressedGRangesList。sgfeatucounts和SGVariantCounts扩展了summarizeexperiment,是每个样本计数(或其他表达式值)的容器,以及相应的SGFeatures和sgvariables对象。^\astSGVariantCounts检测计数variant5por3p只能从BAM文件中获得,详细信息请参见测试差异剪接变体的使用。

图1。的概述SGSeq数据结构。(一个)说明转录本、离散转录本特征、剪接图和由可选剪接变体组成的剪接事件的示意图。剪接事件定义在一个增强图中,每个基因都有一个唯一的源节点和汇聚节点,分别连接到可选的开始和结束节点(虚线)。(bSGSeq(a)所示概念的表示。类以粗体和轮廓显示,函数名以斜体显示。虚线箭头表示函数analyzeFeatures ()而且analyzeVariants (),其中包含多个分析步骤。SGSeq广泛使用Bioconductor基因组范围的基础设施(Lawrence et al. 2013)TxFeatures而且SGFeatures扩展农庄SGVariants扩展CompressedGRangesListSGFeatureCounts而且SGVariantCounts扩展SummarizedExperiment和是每个样本计数(或其他表达式值)的容器以及相应的SGFeatures而且SGVariants对象。\ (^ \ ast \)SGVariantCounts分析countsVariant5pOr3p只能从BAM文件中获取,详细信息请参见测试不同拼接变量的使用情况

2预赛

库(SGSeq)

当开始一个新项目时,SGSeq需要有关待分析样品的信息。这些信息最初只获得一次,然后可以用于所有未来的分析。示例信息以数据帧的形式提供,包含以下列:

示例信息可以存储在data.frameDataFrame对象(如果BAM文件被指定为BamFileList,则必须存储在DataFrame).具有自动获取样品信息的功能getBamInfo (),它将一个带列的数据帧作为输入sample_name而且file_bam并从指定的BAM文件中提取所有其他信息。

SGSeq为了正确地工作,读取必须使用一个感知拼接的对齐程序(如GSNAP)进行映射(Wu and Nacu 2010), HISAT(Kim, Langmead, and Salzberg 2015)或明星(Dobin et al. 2013),生成带有自定义标记“XS”的SAM/BAM文件,用于拼接读取,指示转录方向。BAM文件必须被索引。请注意,lib_size应该是对齐片段的总数,即使BAM文件是感兴趣的基因组区域的子集。为了精确计算FPKM值(每千碱基片段数和百万序列片段数),需要总片段数。在这里,术语“片段”表示已测序的cDNA片段,它由单端数据中的一次读取表示,或成对端数据中的一对读取表示。

本插图说明了对来自四个肿瘤和四个正常结直肠样本的配对端RNA-seq数据的分析,这些数据是发表在(Seshagiri et al. 2012).RNA-seq读数使用GSNAP映射到人类参考基因组(Wu and Nacu 2010).该分析基于BAM文件,这些文件是映射到单个感兴趣基因(FBXO31).一个data.frame如果从带函数的原始BAM文件中生成样本信息getBamInfo ().注意这一栏lib_size反映原始BAM文件中对齐片段的总数。

如果
## sample_name file_bam paired_end read_length frag_length lib_size ## 1 N1 N1bam TRUE 75 293 12405197 ## 2 N2。bam TRUE 75 197 13090179 ## 3 N3 N3。bam TRUE 75 206 14983084 ## 4 N4 N4。bam TRUE 75 207 15794088 ## 5 T1 T1。bam TRUE 75 284 14345976 ## 6 T2 T2。bam TRUE 75 235 15464168 ## 7 T3 T3。bam TRUE 75 259 15485954 ## 8 T4 T4。bam TRUE 75 247 15808356

下面的代码块为当前文件设置正确的BAM文件路径SGSeq安装。

路径<- system. Path。file("extdata", package = "SGSeq") si$file_bam <- file. file("extdata", package = "SGSeq")路径(Path, "bams", si$file_bam)

3.RNA转录本TxFeatures

文本注释可以从TxDb对象或使用函数从GFF格式导入importTranscripts ().或者,可以将转录本指定为GRangesList按转录本分组的外显子。在下面的代码块中,UCSC knownGene表作为TxDb对象。16号染色体上的转录本FBXO31基因定位)被保留,并且染色体名称被更改为与BAM文件中使用的命名约定相匹配。

txdb <- txdb . hsapiens . ucsc .hg19. knowngeneknownGene txdb <- keepSeqlevels(txdb, "chr16") seqlevelsStyle(txdb) <- "NCBI"

中的注释SGSeq框架,从文本特征中提取TxDb使用函数的对象convertToTxFeatures ().只有基因位点重叠的特征FBXO31基因被保留。基因组坐标FBXO31存储在农庄对象gr

txf_ucsc <- converttoxfeatures (txdb) txf_ucsc <- txf_ucsc[txf_ucsc %over% gr] head(txf_ucsc)
与6 # # TxFeatures对象范围和0元数据列:链类型# # # # seqnames范围< Rle > < IRanges > < Rle > <因素> # # [1]16 87362942 - 87365116 L # # 16 87365116 - 87367492 J[2] # #[3] 16 87367492 - 87367892我# # 16 87367892 - 87368910 J[4] # #[5] 16 87368910 - 87369063我# # 16 87369063 - 87369761 J [6] # # txName geneName # # < CharacterList > < CharacterList > # # [1] uc002fjv.3, uc002fjw.3 uc010vot。2 79791 ## [2] uc002fjv.3,uc002fj .3,uc010vot。2 79791 ## [3] uc002fjv.3,uc002fj .3,uc010vot。2 79791 ## [4] uc002fjv.3,uc002fj .3,uc010vot。2 79791 ## [5] uc002fjv.3,uc002fj .3,uc010vot。2 79791 ## [6] uc002fjv.3,uc002fj .3,uc010vot。279791## ------- ## seqinfo: 1 sequence from GRCh37.p13 genome

convertToTxFeatures ()返回一个TxFeatures对象,它是a农庄类对象,具有额外的列。列类型特征类型,可以取值

txName而且geneName指出每个特征所属于的转录本和基因。请注意,一个特性可以属于多个转录本,因此这些列可以为每个特性存储多个值。为TxFeatures和其他数据结构SGSeq,列可以使用如下代码块所示的访问器函数访问。

类型(txf_ucsc)
## [1] L J I J I J I J I J I J I J I J I F J J F U I J F F ##级别:J I F L U
头(txName (txf_ucsc))
##长度为6的字符列表## [[1]]uc002fjv。3 uc002fjw。3 uc010vot。2## [[2]] uc002fjv.3 uc002fjw.3 uc010vot.2 ## [[3]] uc002fjv.3 uc002fjw.3 uc010vot.2 ## [[4]] uc002fjv.3 uc002fjw.3 uc010vot.2 ## [[5]] uc002fjv.3 uc002fjw.3 uc010vot.2 ## [[6]] uc002fjv.3 uc002fjw.3 uc010vot.2
头(geneName (txf_ucsc))
长度6 # # # # CharacterList [[1]] 79791 # # 79791 # # [[2]] [[3]] 79791 # # 79791 # # [[4]] [[5]] 79791 # # [[6]] 79791

4拼接图和SGFeatures

外显子存储在TxFeatures对象代表RNA分子中拼接的外显子。在拼接图的上下文中,外显子由唯一的非重叠外显子区域表示。函数convertToSGFeatures ()转换TxFeaturesSGFeatures.在这个过程中,重叠的外显子被分离成非重叠的外显子箱。

sgf_ucsc <- convertToSGFeatures(txf_ucsc) head(sgf_ucsc)
## SGFeatures对象,包含6个范围和0个元数据列:# # seqnames范围链类型splice5p splice3p featureID # # < Rle > < IRanges > < Rle > <因素> <逻辑> <逻辑> <整数> # # [1]16 87362942 - 87365116 E真假1 # #[2]16 87365116——< NA > < NA > 2 # # [3] 16 87365116 - 87367492 J < NA > < NA > 3 # # [4] 16 87367492 - D < NA > < NA > 4 # # [5] 16 87367492 - 87367892 E真正真正的5 # #[6]16 87367892——< NA > < NA > 6 # # geneID txName geneName # # <整数> < CharacterList > < CharacterList > # # [1] 1 uc002fjv.3 uc002fjw.3 uc010vot。2 79791 ## [2] 1 uc002fjv.3,uc002fjw.3,uc010vot。2 79791 ## [3] 1 uc002fjv.3,uc002fjw.3,uc010vot。2 79791 ## [4] 1 uc002fjv.3,uc002fjw.3,uc010vot。2 79791 ## [5] 1 uc002fjv.3,uc002fjw.3,uc010vot。2 79791 ## [6] 1 uc002fjv.3,uc002fjw.3,uc010vot。279791## ------- ## seqinfo: 1 sequence from GRCh37.p13 genome

类似于TxFeaturesSGFeatures农庄类对象与额外的列。列类型对于一个SGFeatures对象接受值

按照惯例,剪接的供体和受体位点对应于内含子侧翼的外显子位置。SGFeatures是否没有包含其他列TxFeaturesspliced5p而且spliced3p指示外显子箱是否在5处有强制剪接\ (^ \ ' \)和3\ (^ \ ' \)分别结束。该信息用于确定读取的内容在结构上是否与外显子箱兼容,以及外显子箱是否与注释的转录本一致。featureID为每个特性提供唯一标识符,geneID表示一个特征所属的拼接图的唯一组件。

5基于注释文本的拼接图分析

本节说明基于注释文本的分析。函数analyzeFeatures ()将转录本特征转换为拼接图特征,并获得每个特征和每个样本的兼容片段计数。

sgfc_ucsc <- analyzeFeatures(si, features = txf_ucsc) sgfc_ucsc
##类:sgfeaturecrets ## dim: 42 8 ##元数据(0):## assays(2):计数FPKM ## rownames: NULL ## rowData names(0): ## colnames(8): N1 N2…T3 T4 ## colData names(6): sample_name file_bam…frag_length lib_size

analyzeFeatures ()返回一个SGFeatureCounts对象。SGFeatureCounts包含样例信息为colData,拼接图特征为rowRanges和化验计数而且FPKM,分别存储兼容的片段计数和fpkm。可以使用同名的访问器函数访问不同的数据类型。

colData(sgfc_ucsc) rowRanges(sgfc_ucsc) head(counts(sgfc_ucsc)) head(FPKM(sgfc_ucsc))

外显子和剪接连接的计数是基于结构兼容的片段。在剪接供体和受体的情况下,计数表示跨越剪接边界(重叠剪接位点和侧翼内含子位置)的读片段的数量。

FPKM值计算为\ \(压裂{x}{问}10 ^ 6 \),在那里\ \ (x)是兼容片段的数量,\ (N \)库大小(存储在lib_size),l有效特征长度(兼容片段可能位置的数量)。对于成对端数据,假设片段长度等于frag_length

用于拼接图特征的fpkm可以用函数进行可视化plotFeaturesplotFeatures生成一个双面板图,其中显示在顶部面板中的拼接图和底部面板中单个特征的表达水平热图。用于定制plotFeatures输出,参见节可视化.绘图函数无形地返回data.frame与详细的拼接图显示在图中。

df <- plotFeatures(sgfc_ucsc, geneID = 1)

请注意,拼接图包括三个可选的转录起始点(tss)。然而,热图表明第一个TSS没有在这个数据集中使用。

6基于拼接图分析新创预测

而不是依赖于现有的注释,注释可以通过RNA-seq数据的预测来增强,或者可以在不使用注释的情况下从RNA-seq数据构建拼接图。下面的代码块预测RNA-seq读取支持的转录本特征,将其转换为拼接图特征,然后获得兼容的片段计数。有关如何获得预测的详细信息,请参阅(Goldstein et al. 2016)

sgfc_pred <- analyzeFeatures(si, which = gr) head(rowRanges(sgfc_pred))
## SGFeatures对象,包含6个范围和0个元数据列:# # seqnames范围链类型splice5p splice3p featureID # # < Rle > < IRanges > < Rle > <因素> <逻辑> <逻辑> <整数> # # [1]16 87362930 - 87365116 E真假1 # #[2]16 87365116——< NA > < NA > 2 # # [3] 16 87365116 - 87367492 J < NA > < NA > 3 # # [4] 16 87367492 - D < NA > < NA > 4 # # [5] 16 87367492 - 87367892 E真正真正的5 # #[6]16 87367892——< NA > < NA > 6 # # geneID txName geneName # # <整数> < CharacterList > < CharacterList > # # 1 # # [1] [2] 1 # # 1 # # [4] [3] 1 # # 1 # # [6] [5] 1  ## ------- ##Seqinfo:来自未知基因组的84个序列

对于解释,预测的特征可以根据已知的转录本进行注释。的注释()函数为每个特征分配兼容的转录本,并将相应的转录本和基因名存储在列中txName而且geneName,分别。

sgfc_pred <-注释(sgfc_pred, txf_ucsc) head(rowRanges(sgfc_pred))
## SGFeatures对象,包含6个范围和0个元数据列:# # seqnames范围链类型splice5p splice3p featureID # # < Rle > < IRanges > < Rle > <因素> <逻辑> <逻辑> <整数> # # [1]16 87362930 - 87365116 E真假1 # #[2]16 87365116——< NA > < NA > 2 # # [3] 16 87365116 - 87367492 J < NA > < NA > 3 # # [4] 16 87367492 - D < NA > < NA > 4 # # [5] 16 87367492 - 87367892 E真正真正的5 # #[6]16 87367892——< NA > < NA > 6 # # geneID txName geneName # # <整数> < CharacterList > < CharacterList > # # [1] 1 uc002fjv.3 uc002fjw.3 uc010vot。2 79791 ## [2] 1 uc002fjv.3,uc002fjw.3,uc010vot。2 79791 ## [3] 1 uc002fjv.3,uc002fjw.3,uc010vot。2 79791 ## [4] 1 uc002fjv.3,uc002fjw.3,uc010vot。2 79791 ## [5] 1 uc002fjv.3,uc002fjw.3,uc010vot。2 79791 ## [6] 1 uc002fjv.3,uc002fjw.3,uc010vot。279791## ------- ## seqinfo: 84 sequences from an unspecified genome

预测的拼接图和fpkm可以像前面一样可视化。使用参数突出显示缺少注释的拼接图特征color_novel

df <- plotFeatures(sgfc_pred, geneID = 1, color_novel = "red")

请注意,从RNA-seq数据预测的大多数外显子和剪接连接与UCSC knownGene表中的转录本一致(灰色显示)。然而,与前图相比,预测的基因模型不包括拼接图中未在数据中表达的部分。此外,从RNA-seq数据中发现了一个未注释的外显子(E3,红色部分),该外显子在4个正常结肠直肠样本中的3个(N2, N3, N4)中表达。

7剪接变体识别

而不是考虑一个基因的完整剪接图,分析可以集中在个别剪接事件。函数analyzeVariants ()递归地从图中识别剪接事件,获得每个剪接变体的代表性计数,并计算相对剪接变体使用的估计值,也称为“剪接百分比”(PSI或\ψ(\ \)(Venables et al. 2008, @Katz:2010aa)

sgvc_pred <- analyzeVariants(sgfc_pred) sgvc_pred
##类:SGVariantCounts ## dim: 2 8 ##元数据(0):## assays(5): countsVariant5p countsVariant3p countsev5p countsev3p ## variantFreq ## rownames: NULL ## rowData names(20): from to…## colnames(8): N1 N2…T3 T4 ## colData names(6): sample_name file_bam…frag_length lib_size

analyzeVariants ()返回一个SGVariantCounts对象。示例信息存储为colData,SGVariants作为rowRanges.分析variantFreq存储每个拼接变体和样本的相对使用估计。与前面一样,可以使用访问器函数访问不同的数据类型。关于拼接变量的信息存储在SGVariants元数据列,可以通过函数访问mcols ()如下图所示。有关列的详细描述,请参阅的手册页SGVariants

mcols (sgvc_pred)
# # DataFrame与2 # # 20行和列类型featureID segmentID closed5p # # <人物> <人物> <人物> <人物> <人物> <逻辑> # # 1 D: 16:87393901:——:16:87380856:28 - J 4 # # 2 D: 16:87393901:——:16:87380856:——JEJ 32岁,30日,27日2真正的# # closed3p closed5pEvent closed3pEvent geneID eventID variantID # # <逻辑> <逻辑> <逻辑> <整数> <整数> <整数> # # 1真的真的真的1 1 1 # # 2真的真的真的1 1 2 # # featureID5p featureID3p featureID5pEventfeatureID3pEvent ##     ## 1 28 28 28,32 28,27 ## 2 32 27 28,32 28,27 ## txName geneName variantType ##    ## 1 uc002fjv.3,uc002fjw.3,uc010vot。2 79791 SE:S ## 2 79791 SE:I ## variantName ## <字符> ## 1 79791_1_1/2_SE ## 2 79791_1_2/2_SE

8拼接变量量化

拼接变体是局部量化的,基于结构上兼容的片段,这些片段横跨每个变体的开始或结束。相对使用量的本地估计\ \ Psi_i \ ()的变体我\ \ ()得到的片段数与我\ \ ()除以与属于同一事件的任何变体兼容的片段数。对于变型启动\ (\)变量末端\ \ (E)\(\hat{\Psi}_i^S = x_i^S / x_.^S\)而且\(\hat{\Psi}_i^E = x_i^E / x_.^E\),分别。对于具有有效估计的变量{\ \(\帽子Psi} _i ^ \)而且{\ \(\帽子Psi} _i E ^ \),单一估计值以局部估计值的加权平均值计算\(\hat{\Psi}_i = x_.^S/(x_。^S + x_.^E) \hat{\Psi}_i^S + x_.^E/(x_. ^E)^S + x_.^E) \hat{\Psi}_i \ E

对于读计数较低的事件,相对使用率的估计可能不可靠。如果参数min_denominator为函数指定。analyzeVariants ()getSGVariantCounts (),估计值设置为NA除非至少有一个\(间。^ \)\(间E ^ \)。等于或大于指定的值。

请注意,SGVariantCounts对象还存储原始计数数据。计数数据可以用于统计建模,例如小节中所建议的测试不同拼接变量的使用情况

variantFreq (sgvc_pred)
## n1 n2 n3 n4 t1 t2 t3 t4 ## [1,] 0.88 0.56 0.6153846 0.5925926 0.93333333 0.90196078 0.8484848 0.95833333 ## [2,] 0.12 0.44 0.3846154 0.4074074 0.06666667 0.09803922 0.1515152 0.04166667

拼接变量和相对使用的估计可以用函数可视化plotVariants

plotvariables (sgvc_pred, eventID = 1, color_novel = "red")
## [updateObject]验证更新后的对象…## [updateObject]正在验证更新的对象好吧

plotVariants生成类似于的双面板图形plotFeatures.顶部面板中的拼接图说明了所选的拼接事件。在本例中,事件由两个变体组成,对应于跳过或包含未注释的外显子。热图说明了每个拼接变体的相对使用估计。样本N2, N3和N4显示了包括外显子以及跳过外显子的转录本的证据。其余样本显示很少有外显子包含的证据。

9拼接变体解释

剪接变异的功能后果可以通过预测其对蛋白质编码潜力的影响来评估。函数predictVariantEffects ()作为输入SGVariants对象,该对象具有感兴趣的拼接变体、一组注释的转录本和匹配的参考基因组BSgenome对象。

library(BSgenome.Hsapiens.UCSC.hg19) seqlevelsStyle(Hsapiens) <- "NCBI"
##警告(function (seqlevels, genome, new_style):无法将## hg19的一些seqlevels从UCSC样式切换到NCBI样式
vep <- predictvarianteeffects (sgv_pred, txdb, Hsapiens) vep
## variantID txName geneName RNA_change ## 1 uc002fjv。2 2 uc002fjw. 1;3.79791r.412_413ins412+1798_412+1884 ## 3 2 uc010vot.2 79791 r.-105_-104ins-105+1798_-105+1884 ## RNA_variant_type protein_change ## 1 insertion p.K29_L30insRINPRVKSGRFVKILPDYEHMAYRDVYTC ## 2 insertion p.K137_L138insRINPRVKSGRFVKILPDYEHMAYRDVYTC ## 3 insertion p.= ## protein_variant_type ## 1 in-frame_insertion ## 2 in-frame_insertion ## 3 no_change

输出是一个数据帧,每一行都描述了一个特定的剪接变体对注释的蛋白质编码转录本的影响。变量的影响如下所述HGVS发布建议.在目前的实施中,变异效应预测相对较慢,建议运行predictVariantEffects ()仅在选定的变量上。

10可视化

功能plotFeatures ()而且plotVariants ()支持许多自定义图形的选项。顶部面板中的拼接图是按函数绘制的plotSpliceGraph,可直接调用。

plotFeatures ()包含多个参数,用于选择要显示的特性。下面的代码块说明了用于绘制的拼接图和表达式级别的三个不同选项FBXO31(Entrez ID 79791)。

plotFeatures(sgfc_pred, geneID = 1) plotFeatures(sgfc_pred, geneName = "79791") plotFeatures(sgfc_pred, which = gr)

缺省情况下,由plotFeatures ()显示拼接连接。或者,可以显示外显子箱,或者外显子箱和剪接结都可以显示。

plotFeatures(sgfc_pred, geneID = 1, include = " connections ") plotFeatures(sgfc_pred, geneID = 1, include = "exons")

论点toscale控制按比例绘制基因模型的哪些部分。

plotFeatures(sgfc_pred, geneID = 1, toscale = "gene") plotFeatures(sgfc_pred, geneID = 1, toscale = "exon")

热图可以可视化剪接结和外显子箱的表达值。或者,每个基读覆盖和拼接结计数可以用函数可视化plotCoverage

par(mfrow = c(5,1), mar = c(1,3,1,1)) plotSpliceGraph(rowRanges(sgfc_pred), geneID = 1, toscale = "none", color_novel = "red") for (j in 1:4) {plotCoverage(sgfc_pred[, j], geneID = 1, toscale = "none")}

11测试不同拼接变量的使用情况

SGSeq不实现对差异拼接变量使用情况的统计测试。然而,现有的软件包等DEXSeq(安德斯,雷耶斯,Huber 2012)而且limma(Ritchie et al. 2015)可用于此目的。这些包允许在基因内(在样本组之间)推断差异外显子的使用。在SGSeq框架,这种方法可以用来测试不同的剪接变异使用剪接事件,处理剪接变异和剪接事件分别作为外显子和基因。

为了使这些方法适用,每个拼接变体都需要一个计数。SGVariantCounts如上所述的对象为每个拼接变量存储两个计数,一个用于5\ (^ \ ' \)一个是3\ (^ \ ' \)变体结束。这些数字可以很容易地从SGFeatureCounts对象,但对于基于计数的差分测试是不切实际的。每个变体的单个计数(基于变体两端兼容的片段)可以使用函数从BAM文件中获得getSGVariantCounts ().输出是SGVariantCounts带有附加分析的对象countsVariant5pOr3p

sgv <- rowRanges(sgvc_pred) sgvc <- getSGVariantCounts(sgv, sample_info = si) sgvc
##类:SGVariantCounts ## dim: 2 8 ##元数据(0):## assays(6): countsVariant5p countsVariant3p…countsVariant5pOr3p ## variantFreq ## rownames: NULL ## rowData names(20): from to…## colnames(8): N1 N2…T3 T4 ## colData names(6): sample_name file_bam…frag_length lib_size

执行差异测试需要每个变量计数,每个变量的唯一标识符,以及指示变量如何按事件分组的变量。这三种方法都可以从SGVariantCounts对象。

x <- counts(sgvc) vid <- variantID(sgvc) eid <- eventID(sgvc)

将这三个对象类比为每外显子计数、外显子标识符和基因标识符,它们可以用来构建一个DEXSeqDataSet对象,用于DEXSeq或者作为函数的输入diffSplice ()结合轰()用于limma

12高级用法

功能analyzeFeatures ()而且analyzeVariants ()包装多个分析步骤方便。或者,可以直接调用执行单独步骤的函数。例如,基于的分析新创可以进行如下预测。

txf <- predictTxFeatures(si, gr) sgf <- convertToSGFeatures(txf) sgf <- annotate(sgf, txf_ucsc) sgfc <- getsgfeatucounts (si, sgf) sgv <- findsgvariables (sgf) sgvc <- getSGVariantCounts(sgv, sgfc)

predictTxFeatures ()预测每个样本的特征,合并样本之间的特征,并对预测的末端外显子进行过滤和处理。predictTxFeatures ()而且getSGFeatureCounts ()也可以在单个示例上运行(例如在高性能计算集群上分布)。当使用predictTxFeatures ()对于单独的样本,其预测将在稍后合并,运行predictTxFeatures ()与参数min_overhang = NULL抑制末端外显子的加工。然后,预测随后可以与函数合并和处理mergeTxFeatures ()而且processTerminalExons (),分别。

13多核使用和内存需求

SGSeq支持同一计算节点上的多核并行。对于支持并行化的函数,可以使用论点。对于大多数全基因组分析,每个核的内存要求不应超过16gb。在特征预测或读取计数期间遇到的内存问题可能是由于具有高读取覆盖率的单个基因组区域造成的。默认情况下,在预测期间跳过拆分-读取复杂度高的区域(由参数控制)max_complexity).对于计数步骤,记忆问题可以通过排除有问题的区域(例如线粒体基因)来解决。

14会话信息

sessionInfo ()
## R版本4.2.0 RC (2022-04-19 r82224) ##平台:x86_64-pc-linux-gnu(64位)##运行在Ubuntu 20.04.4 LTS ## ##矩阵产品:默认## BLAS: /home/biocbuild/bbs-3.15-bioc/R/lib/libRblas。/home/biocbuild/bbs-3.15-bioc/R/lib/libRlapack。所以## ## locale: ## [1] LC_CTYPE=en_US。UTF-8 LC_NUMERIC=C ## [3] LC_TIME=en_GB LC_COLLATE=C ## [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 ## [7] LC_PAPER=en_US.UTF-8 LC_NAME=C ## [9] LC_ADDRESS=C LC_TELEPHONE=C ## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C ## ## attached base packages: ## [1] stats4 stats graphics grDevices utils datasets methods ## [8] base ## ## other attached packages: ## [1] BSgenome.Hsapiens.UCSC.hg19_1.4.3 ## [2] BSgenome_1.64.0 ## [3] rtracklayer_1.56.0 ## [4] TxDb.Hsapiens.UCSC.hg19.knownGene_3.2.2 ## [5] GenomicFeatures_1.48.0 ## [6] AnnotationDbi_1.58.0 ## [7] SGSeq_1.30.0 ## [8] SummarizedExperiment_1.26.0 ## [9] Biobase_2.56.0 ## [10] MatrixGenerics_1.8.0 ## [11] matrixStats_0.62.0 ## [12] Rsamtools_2.12.0 ## [13] Biostrings_2.64.0 ## [14] XVector_0.36.0 ## [15] GenomicRanges_1.48.0 ## [16] GenomeInfoDb_1.32.0 ## [17] IRanges_2.30.0 ## [18] S4Vectors_0.34.0 ## [19] BiocGenerics_0.42.0 ## [20] knitr_1.38 ## [21] BiocStyle_2.24.0 ## ## loaded via a namespace (and not attached): ## [1] bitops_1.0-7 bit64_4.0.5 filelock_1.0.2 ## [4] progress_1.2.2 httr_1.4.2 tools_4.2.0 ## [7] bslib_0.3.1 utf8_1.2.2 R6_2.5.1 ## [10] DBI_1.1.2 tidyselect_1.1.2 prettyunits_1.1.1 ## [13] bit_4.0.4 curl_4.3.2 compiler_4.2.0 ## [16] cli_3.3.0 xml2_1.3.3 DelayedArray_0.22.0 ## [19] bookdown_0.26 sass_0.4.1 rappdirs_0.3.3 ## [22] stringr_1.4.0 digest_0.6.29 rmarkdown_2.14 ## [25] pkgconfig_2.0.3 htmltools_0.5.2 dbplyr_2.1.1 ## [28] fastmap_1.1.0 highr_0.9 rlang_1.0.2 ## [31] RSQLite_2.2.12 jquerylib_0.1.4 BiocIO_1.6.0 ## [34] generics_0.1.2 jsonlite_1.8.0 BiocParallel_1.30.0 ## [37] dplyr_1.0.8 RCurl_1.98-1.6 magrittr_2.0.3 ## [40] GenomeInfoDbData_1.2.8 Matrix_1.4-1 Rcpp_1.0.8.3 ## [43] fansi_1.0.3 lifecycle_1.0.1 stringi_1.7.6 ## [46] yaml_2.3.5 zlibbioc_1.42.0 BiocFileCache_2.4.0 ## [49] grid_4.2.0 blob_1.2.3 parallel_4.2.0 ## [52] crayon_1.5.1 lattice_0.20-45 hms_1.1.1 ## [55] KEGGREST_1.36.0 magick_2.7.3 pillar_1.7.0 ## [58] igraph_1.3.1 RUnit_0.4.32 rjson_0.2.21 ## [61] biomaRt_2.52.0 XML_3.99-0.9 glue_1.6.2 ## [64] evaluate_0.15 BiocManager_1.30.17 png_0.1-7 ## [67] vctrs_0.4.1 purrr_0.3.4 assertthat_0.2.1 ## [70] cachem_1.0.6 xfun_0.30 restfulr_0.0.13 ## [73] tibble_3.1.6 GenomicAlignments_1.32.0 memoise_2.0.1 ## [76] ellipsis_0.3.2

参考文献

安德斯,S, A Reyes, W Huber, 2012。“从RNA-seq数据中检测外显子的差异使用。”基因组研究22(10): 2008-17。

多宾,亚历山大,凯莉·A·戴维斯,菲利克斯·施莱辛格,约尔格·德伦科,克里斯·扎莱斯基,索纳利·杰哈,菲利普·巴图,马克·柴森和托马斯·R·金格拉斯。2013。STAR:超快通用RNA-seq校准器生物信息学29(1): 15-21。

Goldstein, Leonard D, Yi Cao, Gregoire Pau, Michael Lawrence, Thomas D Wu, Somasekar Seshagiri和Robert Gentleman, 2016。从RNA-Seq数据预测和量化剪接事件《公共科学图书馆•综合》11 (5): e0156132。

希伯,斯特芬,马克斯·阿列克谢耶夫,施成海,唐海旭,帕维尔·A·佩夫兹纳。2002。"拼接图和EST组装问题"生物信息学(牛津,英国)18补充1:S181-8。

Katz, Yarden, Eric T Wang, Edoardo M Airoldi和Christopher B Burge, 2010。“分析和设计RNA测序实验,以确定异构体调节。”自然方法7(12): 1009-15。

金,大焕,本·朗米德,史蒂文·L·萨尔茨伯格,2015。HISAT:具有低内存需求的快速拼接对齐器。自然方法12(4): 357-60。

劳伦斯,迈克尔,沃尔夫冈·胡贝尔,Hervé Pagès,帕特里克·阿博尤恩,马克·卡尔森,罗伯特·绅士,马丁·T·摩根,文森特·J·凯里。2013。计算和注释基因组范围的软件PLoS计算生物学9 (8): e1003118。

里奇,马修·E,贝琳达·菲普森,吴迪,胡一芳,罗瑞迪·W,史伟,戈登·K·史密斯。2015。“limma为rna测序和微阵列研究的差异表达分析提供了动力。”核酸研究43 (7): e47。

瑟沙吉里,索马塞卡,埃里克·W·斯塔维斯基,斯蒂芬·杜林克,卓拉·莫德鲁桑,伊莱恩·E·斯托姆,凯特琳·B·康博伊,苏布拉·乔杜里等,2012。"结肠癌中复发性R-spondin融合"自然488(7413): 660-64。

维纳布尔斯,朱利安·P,罗斯科·克林克,安妮·布拉玛德,莉娜·因克尔,吉纳维芙·杜弗雷恩-马丁,高楚欣,朱利安·热尔维斯-伯德等,2008。"乳腺癌替代剪接标记物的鉴定"癌症研究68(22): 9525-31。

托马斯·D·吴,塞尔班·纳库,2010。“快速和耐snp检测复杂变异和短读剪接。”生物信息学26(7): 873-81。