内容

#>警告:替换以前的导入'matrixStats::rowMedians'由#> 'Biobase::rowMedians'加载'DSS' #>警告:替换以前的导入'matrixStats::anyMissing'由#> 'Biobase::anyMissing'加载'DSS'

1简介

这个小插图的目的是向用户展示如何改造他们的methylSig< 0.99.0代码以在0.99.0版本及更高版本中使用重构。

2读取数据

2.1老methylSig

的版本< 0.99.0methylSig,methylSigReadData ()功能读取Bismark覆盖文件,Bismark全基因组CpG报告,或MethylDackel床图。此外,用户还可以对数据进行解链、按覆盖率过滤和snp过滤。

meth = methylSigReadData(fileList = files, pData = pData, assembly = 'hg19', de= TRUE, maxCount = 500, minCount = 10, filterSNPs = TRUE, num.cores = 1, fileType = 'cytosineReport')

2.2新methylSig

在版本>= 0.99.0的methylSig,用户应读取数据bsseq: read.bismark ()然后应用曾经捆绑在里面的函数methylSigReadData ()

Files = c(system。文件(“extdata”、“bis_cov1。cov', package='methylSig'),系统。文件(“extdata”、“bis_cov2。bsseq_strand = bsseq::read。bismark(files = files, colData = data.frame(row.names = c('test1','test2')), rmZeroCov = FALSE, strandCollapse = FALSE)

读取数据后,按覆盖率进行过滤。注意,我们正在将数据集更改为可以与下游函数一起使用的数据集。

#加载数据以用于其余的小插图数据(BS.cancer. data)。例如,package = 'bsseqData') bs = bs .cancer。Ex [1:10000] bs = filter_loci_by_coverage(bs, min_count = 5, max_count = 500)

如果已知C-to-T和G-to-A snp的位置,或者应该删除其他一些位置集:

#构造GRanges对象remove_gr = GenomicRanges::GRanges(seqnames = c('chr21', 'chr21', 'chr21'), ranges = IRanges::IRanges(start = c(9411552, 9411784, 9412099), end = c(9411552, 9411784, 9412099)) bs = filter_loci_by_location(bs = bs, gr = remove_gr)

3.瓷砖的数据

3.1老methylSig

的版本< 0.99.0methylSig,methylSigTile ()函数结合了聚合CpG数据在预定义的瓷砖和基因组窗口。

#对于基因组窗口,tiles = NULL windowed_meth = methylSigTile(meth, tiles = NULL, win。对于预定义的tiles, tiles应该是一个GRanges对象。

3.2新methylSig

在版本>= 0.99.0的methylSig,平铺分为两个功能,tile_by_regions ()而且tile_by_windows ().用户应该选择其中之一。

windowwed_bs = tile_by_windows(bs = bs, win_size = 10000)
#在chr21和chr22数据上的折叠启动子(promoters_gr, package = 'methylSig') promoters_bs = tile_by_regions(bs = bs, gr = promoters_gr)

4测试

4.1MethylSig测试

以下4.4.1老methylSig

的版本< 0.99.0methylSig,methylSigCalc函数有一个min.per.group参数,以确定每组必须覆盖多少样本才能进行测试。

result = methylSigCalc(冰毒=冰毒,比较= 'DR_vs_DS',色散= 'both', local.info = FALSE,本地。winsize = 200, min.per.group = c(3,3), weightFunc = methylSig_weightFunc, T.approx = TRUE, num.cores = 1)

4.1.2新methylSig

在版本>= 0.99.0的methylSig,min.per.group功能由一个单独的函数来执行filter_loci_by_group_coverage ().还要注意定义色散计算的形式的变化,以及局部信息的使用。

#看起来bs bsseq的表型数据::pData (bs) # > DataFrame 2 6行和列# >类型对# > <人物> <人物> # > C1癌症pair1 # > C2 pair2 # > C3癌症pair3 # > N1正常pair1 # > N2正常pair2 # > N3正常pair3 #至少需要两个样品从癌症和两个样品正常b = filter_loci_by_group_coverage (b = b, group_column =“类型”,c(“癌症”= 2,“正常”= 2))

删除信息不足的位点后,我们现在可以使用diff_methylsig ()测试。

#测试癌症和正常,从两个组中分散diff_gr = diff_methylsig(bs = bs, group_column = 'Type', comparison_groups = c('case' = 'cancer', 'control' = 'normal'), disp_groups = c('case' = TRUE, 'control' = TRUE), local_window_size = 0, t_approx = TRUE, n_cores = 1)

4.2DSS测试

4.2.1老methylSig

的版本< 0.99.0methylSig,methylSigDSS函数也有一个min.per.group参数,以确定每组必须覆盖多少样本。用户也无法指定要恢复哪些甲基化基团。的形式设计公式,对比,在>= 0.99.0版本中保持不变。

对比=矩阵(c(0,1), ncol = 1) result_dss = methylSigDSS(冰毒=冰毒,设计=设计1,公式= '~组',对比=对比,组。Term = 'group', min.per.group=c(3,3))

4.2.2新methylSig

在版本>= 0.99.0的methylSig,单methylSigDSS ()函数被拟合函数取代diff_dss_fit ()还有一个测试函数diff_dss_test ().与diff_methylsig (),用户应确保足够的样品有足够的覆盖范围filter_loci_by_group_coverage ()函数。的设计而且公式形态不变。

如果要检验一个连续的协变量,filter_loci_by_group_coverage ()应该跳过,因为没有组。在以前的版本中methylSigDSS (),这是不可能的,并且在对连续协变量进行测试之前,不正确地应用了组约束。

#如果之前没有做过#需要至少两个癌症样本和两个正常样本bs = filter_loci_by_group_coverage(bs = bs, group_column = 'Type', c('cancer' = 2, 'normal' = 2))
#用一个截距测试最简单的模型,并输入diff_fit_simple = diff_dss_fit(bs = bs, design = bsseq::pData(bs), formula = as。CpG站点DML模型拟合:

对比参数的形式也发生了变化。请注意,指定如何恢复基团甲基化的附加参数。methylation_group_column而且methylation_groups对于组与组的比较,应该指定。对于连续协变量,methylation_group_column是足够的,并且样本将根据连续协变量列名称分组为顶部/底部25个百分位methylation_group_column

#测试癌症与正常的最简单模型#注意,2行对应于diff_fit_simple$X simple_对比度=矩阵(c(0,1), ncol = 1) diff_simple_gr = diff_dss_test(bs = bs, diff_fit = diff_fit_simple,对比度= simple_对比度,methylation_group_column = 'Type', methylation_groups = c('case' = 'cancer', 'control' = 'normal'))

5会话信息

sessionInfo() #> R version 4.2.0 RC (2022-04-21 r82226) #>平台:x86_64-pc-linux-gnu (64-bit) #>运行在:Ubuntu 20.04.4 LTS #> #>矩阵产品:默认#> BLAS: /home/biocbuild/bbs-3.16-bioc/R/lib/libRblas。所以#> LAPACK: /home/biocbuild/bbs-3.16-bio /R/lib/libRlapack。so #> #> 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# > #>附加基础包:#> [1]stats graphics grDevices utils datasets methods base #> #>其他附加包:#> [1]methylSig_1.9.0 BiocStyle_2.25.0 #> #>通过命名空间加载(且未附加):# > [1] Rcpp_1.0.8.3 locfit_1.5 - 9.5 # > [3] lattice_0.20-45 Rsamtools_2.13.0 # > [5] Biostrings_2.65.0 gtools_3.9.2 # > [7] digest_0.6.29 R6_2.5.1 # > [9] GenomeInfoDb_1.33.0 stats4_4.2.0 # > [11] evaluate_0.15 sparseMatrixStats_1.9.0 # > [13] zlibbioc_1.43.0 rlang_1.0.2 # > [15] data.table_1.14.2 jquerylib_0.1.4 # > [17] R.oo_1.24.0 R.utils_2.11.0 # > [19] S4Vectors_0.35.0 Matrix_1.4-1 # > [21] rmarkdown_2.14 splines_4.2.0 # > [23] BiocParallel_1.31.0 stringr_1.4.0 # > [25] beachmat_2.13.0 rcurl_1.98 - 1.6 # >[27] munsell_0.5.0 bsseq_1.33.0 #> [29] DelayedArray_0.23.0 HDF5Array_1.25.0 #> [31] compiler_4.2.0 rtracklayer_1.57.0 #> [33] xfun_0.30 BiocGenerics_0.43.0 #> [35] htmltools_0.5.2 SummarizedExperiment_1.27.0 #> [37] GenomeInfoDbData_1.2.8 bookdown_0.26 #> [39] IRanges_2.31.0 matrixStats_0.62.0 #> [41] XML_3.99-0.9 permute_0.9-7 #> [43] crayon_1.5.1 R.methodsS3_1.8.1 #> [45] GenomicAlignments_1.33.0 rhdf5filters_1.9.0 #> [47] bitops_1.0-7 grid_4.2.0 #> [49] jsonlite_1.8.0 lifecycle_1.0.1 #> [51] magrittr_2.0.3 scales_1.2.0 #> [53] cli_3.3.0 stringi_1.7.6 #> [55] XVector_0.37.0 limma_3.53.0 #> [57] bslib_0.3.1 DelayedMatrixStats_1.19.0 #> [59] DSS_2.45.0 Rhdf5lib_1.19.0 #> [61] rjson_0.2.21 restfulr_0.0.13 #> [63] tools_4.2.0 BSgenome_1.65.0 #> [65] Biobase_2.57.0 MatrixGenerics_1.9.0 #> [67] parallel_4.2.0 fastmap_1.1.0 #> [69] yaml_2.3.5 colorspace_2.0-3 #> [71] rhdf5_2.41.0 BiocManager_1.30.17 #> [73] GenomicRanges_1.49.0 knitr_1.38 #> [75] BiocIO_1.7.0 sass_0.4.1