BiocManager::install("TADCompare") #或者,对于开发版本devtools::install_github("dozmorovlab/TADCompare")
库(dplyr)库(SpectralTAD)库(TADCompare)
TADCompare
是一个允许用户自动识别两个数据集之间的差异TAD边界的功能。对于每个微分边界,我们提供了独特的分类(复杂,合并,分割,移位和强度变化),定义TAD边界如何在数据集之间变化。
中指定的允许形式之一的两个接触矩阵是唯一需要的输入输入数据小插图.TADCompare
函数将自动确定矩阵的类型,并将其转换为适当的形式,假设它是支持的格式之一。唯一的要求是所有矩阵都是相同的格式。为了获得最快的效果,我们建议使用\(n \乘n\)矩阵。此外,我们建议用户提供其数据的解析。如果没有提供分辨率,我们使用接触矩阵的数值列名来估计它。我们演示跑步TADCompare
数据来自GM12878细胞系,22号染色体,分辨率50kb(Rao et al. 2014).
#获取内置到包data("rao_chr22_prim") data("rao_chr22_rep")中的rao联系矩阵
## [1] 704 704
暗(rao_chr22_rep)
## [1] 704 704
#然后,看一下数据是如何像rao_chr22_prim[100: 109,100:105]
## 2.1e+07 21050000 21100000 21150000 21200000 21250000 ## 2.1e+07 6215 1047 1073 714 1236 619 489 ## 21100000 1073 2640 13468 4680 1893 1266 ## 21200000 458 619 1893 4430 11313 4465 ## 21250000 383 489 1266 2124 4465 11824
#重复不指定分辨率no_res = TADCompare(rao_chr22_prim, rao_chr22_rep, resolution = 50000)
##估算分辨率
#我们可以看到,如果有必要,分辨率可以自动估计(结果$Diff_Loci, no_res$Diff_Loci)
##[1]真
TADCompare
函数返回一个包含两个数据帧和一个图表的列表。所述第一数据帧包含所述接触基质中至少一个中包含TAD边界的基因组的所有区域。结果如下所示:
头(结果TAD_Frame美元)
##边界Gap_Score TAD_Score1 TAD_Score2微分矩阵1 ## 1 16300000 -18.6589859 0.7698503 7.704411非微分矩阵1 ## 3 17350000 0.9683905 3.6628411 3.220253非微分矩阵1 ## 4 18000000 -0.1033894 2.3616107 2.347392非微分矩阵2 ## 5 18750000 3.0426660 4.7997622 3.680707微分矩阵1 ## 6 18850000 2.6911660 3.7674844 2.680707微分矩阵1 ##类型## 1 ## 2非差异## 3非差异## 4非差异## 5强度变化## 6强度变化
“边界”列包含给定边界的基因组坐标。“Gap_Score”对应于差异边界分数(边界分数之间差异的z分数)。“TAD_Score1”和“TAD_Score2”分别对应两个接触矩阵的边界分数。“微分”仅仅表示边界是否微分。“Enriched_In”表示哪个矩阵包含TAD边界。“类型”标识TAD边界更改的类型。注意:第一个边界总是被分类为“NA”,因为没有左右的参考边界是不可能进行具体分类的。
第二数据帧包含与第一数据帧相同的信息,但包括基因组的每个区域。我们将其展示如下:
头(结果Boundary_Scores美元)
非微分矩阵1 ## 3 16900000 -0.4402121 -0.4337948 0.009161239非微分矩阵1 ## 4 16950000 -0.7460531 -0.5551327 -0.467725582非微分矩阵2 ## 5 17000000 -0.6803509 -0.6512025 -0.037456910非微分矩阵2 ## 6 17050000 -0.6626352 -0.5562997 -0.245694062非微分矩阵Matrix 2 ## Type ## 1 ## 2 Non-Differential ## 3 Non-Differential ## 4 Non-Differential ## 5 Non-Differential ## 6 Non-Differential
最后,我们包括一个包含堆叠的条形图,表明每种类型的TAD边界的患病率。barplot是一个ggplot2
对象,使其完全可定制。我们展示如下:
p <- results$Count_Plot类(p)
## [1] "gg" "ggplot"
情节(p)
##警告:删除1行包含缺失值(position_stack)。
我们认识到,用户可能喜欢在边界比较之前使用他们自己的TAD调用程序来识别TAD边界。因此,我们为两个接触矩阵的TAD边界的染色体、起始和结束坐标的两个数据帧的形式提供了预规范TADs的选项。使用此选项,只有在TAD边界将被测试的情况下。属性提供了下面的示例SpectralTAD泰德调用者(Cresswell, Stansfield, and Dozmorov, n.d.):
#使用SpectralTAD bed_coords1 = bind_rows(SpectralTAD::SpectralTAD(rao_chr22_prim, chr = "chr22", levels = 3))调用TADs
##估算分辨率
##警告:未知或未初始化列:“组”。##未知或未初始化列:“组”。
bed_coords2 = bind_rows(SpectralTAD(rao_chr22_rep, chr = "chr22", levels = 3)))
##估算分辨率
组合两个接触矩阵的TAD边界Combined_Bed = list(bed_coords1, bed_coords2) #打印TAD边界的组合列表
上面,我们看到SpectralTAD输出的数据集包含一个名为“start”和“end”的列,表示每个TAD的开始坐标和结束坐标。这是必需的,不过任何TAD调用方的输出都可以有效地用于一些数据操作。“级别”列表示层次结构中TAD的级别。
TD_Compare = TADCompare(rao_chr22_prim, rao_chr22_rep, resolution = 50000, pre_tads = Combined_Bed) #返回边界头
非微分矩阵2 ## 3 17600000 -0.06733403 -0.4153272 -0.3809658非微分矩阵2 ## 4 18000000 -0.10338944 2.3616107 2.3473922非微分矩阵2 ## 5 18350000 -0.04284963 -0.7767081 -0.7433986非微分矩阵2 ## 6 19100000 0.01857312 -0.8269469 -0.8153997非微分矩阵矩阵1 ##类型## 1非重叠## 2非重叠## 3非重叠## 4非微分## 5非微分## 6非重叠
TD_Compare$TAD_Frame$Boundary %in% bind_rows(Combined_Bed)$end
## ## true ## 94
在这里,我们看到返回的唯一边界是我们预先指定的边界。
我们提供了可视化差分TAD边界的方法DiffPlot
函数。作为输入,DiffPlot
属性的输出TADCompare
函数和原始接触矩阵。作为输出,它返回ggplot2
可以进一步自定义的对象。我们展示了GM12878和IMR90细胞系之间差异的可视化,在2号染色体子集上,Schmitt等人处理的40kb分辨率数据。(Schmitt et al. 2016):
data("IMR90.40kb.raw.chr2") mtx1 <- GM12878.40kb.raw.chr2")chr2 mtx2 <- IMR90.40kb.raw。chr2 res <- 40000 #设置分辨率#全局归一化矩阵以更好的视觉比较(不影响TAD调用)mtx1_total <- sum(mtx1) mtx2_total <- sum(mtx2) (scaling_factor <- mtx1_total / mtx2_total)
## [1] 0.3837505
如果(mtx1_total > mtx2_total) {mtx2 <- mtx2 * scaling_factor}否则{mtx1 <- mtx1 * (1 / scaling_factor)} #感兴趣区域的坐标start_coord <- 8000000 end_coord <- 16000000 #另一个感兴趣区域# start_coord <- 40000000 # end_coord <- 48000000
#运行TADCompare as-is TD_Compare <- TADCompare(mtx1, mtx2, resolution = res) #使用预先指定的TADs运行绘图算法p <- DiffPlot(tad_diff = TD_Compare, cont_mat1 = mtx1, cont_mat2 = mtx2, resolution = res, start_coord = start_coord, end_coord = end_coord, show_type = TRUE, point_size = 5, max_height = 5, rel_heights = c(1,2), palette = "RdYlBu")
##警告:' guides( = FALSE) '已弃用。请使用' guides( = ## "none") '代替。
情节(p)
从这些结果中,我们可以看到两个矩阵的边界分数(“边界分数1”和“边界分数2”)在两个矩阵中经常被检测为显著边界(边界分数高于1.5阈值),但没有差异(黑点)。差异边界对应于“差异边界分数”轨道,其中检测到2.0阈值以上的绝对边界分数差异。方法中描述的模式定义了不同类型的微分边界TADCompare
手稿。注意,通过设置" show_types "为FALSE可以禁用按类型着色;只显示差分和非差分标签。
我们还可以通过为每个接触矩阵提供包含TAD边界的TAD坐标列表来使用预先指定的TAD。这个列表的长度应该是2。下面我们将展示如何使用SpectralTAD进行预规范:
#使用SpectralTAD bed_coords1 = bind_rows(SpectralTAD(mtx1, chr = "chr2", levels = 3))调用TADs
##估算分辨率
bed_coords2 = bind_rows(SpectralTAD::SpectralTAD(mtx2, chr = "chr2", levels = 3)))
##估算分辨率
#将数据放在绘图过程的列表中Combined_Bed = list(bed_coords1, bed_coords2) #运行TADCompare与预先指定的TADs TD_Compare <- TADCompare(mtx1, mtx2, resolution = res, pre_tads = Combined_Bed) #运行与预先指定的TADs的绘图算法p <- DiffPlot(tad_diff = TD_Compare, cont_mat1 = mtx1, cont_mat2 = mtx2, resolution = res, start_coord = start_coord, end_coord = end_coord, pre_tad = Combined_Bed, show_types = FALSE, point_size = 5,max_height = 10, rel_heights = c(1.5, 2),调色板= "RdYlBu")
##警告:' guides( = FALSE) '已弃用。请使用' guides( = ## "none") '代替。
情节(p)
正如我们所看到的,TADs的预规范允许我们勾勒出增强可视化的TAD边界。此外,现在呈现的差分边界对应于TAD调用方调用的边界,而不是由TADCompare
使用边界分数。请注意,预先指定的TAD边界并不一定对应边界分数;因此,分类模式是针对预先指定的TAD边界应用的。然而,使用预先指定的TADs更容易直观地解释差异的差异。因此,我们建议将“show_types”设置为FALSE。此外,对于预先指定的TADs,引入了一个新的类别,称为“非重叠”。非重叠对应于确定为非微分的边界TADCompare
但在被TAD调用方调用时不重叠。
TimeCompare
是对数据进行时间过程分析的函数。简单地说,用户输入一个表示至少四个时间点的联系矩阵列表。的TimeCompare
函数将以更少的时间点运行,但时间变化的分类可能是不正确的。输出是包含在至少一个时间点检测到TAD边界的所有区域的数据帧。根据TAD边界随时间的演变,这些区域被进一步分为六种不同的时间变化类型(高度常见、动态、早/晚出现和早/晚消失)。无论是否检测到边界,该函数还返回一个汇总每个TAD边界出现情况的图形和另一个包含每个区域变化摘要的数据帧。
TimeCompare
函数接受格式类似于的矩阵列表TADCompare
函数。就像TADCompare
,TimeCompare
函数将估计分辨率并将矩阵转换为适当的格式。对于这个例子,我们使用时变稀疏3列接触矩阵(Rao et al. 2017),代表HCT-116细胞系。该基质是用TAD边界破坏生长素处理的22号染色体细胞样本。然后在生长素提取后的4个时间点(20、40、60和180分钟)对数据进行测序。一旦生长素被提取,TAD边界就会慢慢恢复。使用TimeCompare
功能,我们可以跟踪TADs退出后的返回情况。
#获取接触矩阵数据列表("time_mats") #检查格式头(time_mats[[1]])
## #一个小块:6 × 3 ## X1 X2 X3 ## ## 1 16050000 16050000 14 ## 2 16100000 16100000 3 ## 3 16200000 16200000 1 ## 4 16250000 16250000 1 ## 5 16300000 16300000 10 ## 6 16350000 16350000 2
#运行MultiCompare time_var <- TimeCompare(time_mats, resolution = 50000)
##转换为nxn矩阵
##矩阵尺寸:704x704 ##矩阵尺寸:704x704
返回的第一项TimeCompare
函数是TAD_Bounds
,包含包含在至少一个时间点检测到的TAD边界的所有区域的数据帧:
头(time_var TAD_Bounds美元)
##坐标样本1样本2样本3样本4 Consensus_Score ## 1 16900000 -0.6733709 -0.7751516 -0.7653696 15.1272252 -0.71937026 ## 2 17350000 3.6406563 2.3436229 3.0253018 0.7840556 2.68446232 ## 3 18850000 0.6372268 6.3662244 -0.7876844 6.9255446 3.50172562 ## 4 20700000 1.5667926 3.0968633 2.9130479 2.8300136 2.87153075 ## 5 22000000 -1.0079676 -0.7982571 0.6007264 3.1909178 -0.09876534 ## 6 22050000 -1.0405532 -0.9892242 -0.2675822 4.2737511 -0.62840320 ##类别## 1出现晚TAD ## 2 Early Disappearing TAD ## 3 Early Appearing TAD ## 4 Dynamic TAD ## 5 Late Appearing TAD ## 6 Late Appearing TAD
第一列对应基因组坐标。以“Sample”前缀开头的列对应于每个样本中给定坐标处的边界分数。共识分数只是所有样本的中位数分数,类别对应于变化的类型。
All_Bounds
第二个列表项是否与TAD_Bounds
数据帧,但它包括了基因组的每个区域,不管它是否是TAD。
头(time_var All_Bounds美元)
坐标样本1样本2样本3样本4 Consensus_Score ## 1 16900000 -0.6733709 -0.7751516 -0.7653696 - 15.1272252 -0.7193703 ## 2 16950000 -0.6343671 -0.6624276 -0.4107173 -0.6656620 -0.6483973 ## 3 17000000 -1.0409280 -0.7618272 0.7910678 -1.0008876 -0.8813574 ## 4 17050000 -0.9199917 -0.7123180 - 0.6712399 -0.8254422 -0.7688801 ## 5 17100000 -0.6097913 -0.4785485 -0.6232367 -0.2095729 -0.5441699 ## 6 17150000 -0.7215028 -0.5669957 0.2413230 -0.6332710 -0.6001333 ## 1分类## 1晚出现TAD ## 2高度常见的TAD ## 3高度常见的TAD ## 4高度常见的TAD ## 5高度常见的TAD ## 6高度常见的TAD
我们还包括一个堆叠的条形图,其中包括每种类型的时间边界在数据中出现的次数。这个图是在ggplot2中创建的,并且是完全可定制的。
time_var Count_Plot美元
ConsensusTADs
函数实现了跨多个数据集调用TADs的方法。它使用跨界得分的中位数\ (n \)复制或细胞系来计算TAD边界的一致性,即在整个复制中一致检测。这有效地过滤了可能只出现在一个或几个复制或细胞系中的嘈杂TAD边界。
ConsensusTADs
函数的输入本质上与TimeCompare
函数(一个接触矩阵列表)。它为每个区域提供了一致的TAD分数,概括了基因组的每个接触矩阵。它还提供了一个具有显著TAD分数的地区列表。这些区域可以被认为是共识的TAD边界。使用这些工具,我们可以得到一组tad,这些tad是在一组重复、条件或时间点上总结出来的。对于本例,我们使用来自(Rao et al. 2014).
我们演示如何跑步ConsensusTADs
通过用生长素处理单个样本,破坏其TAD边界,然后在四个时间点(20、40、60和180分钟)跟踪它们的返回,在时变接触矩阵上调用共识TADs。(Rao et al. 2017).共识边界评分旨在提供所有时间点TAD边界的摘要。
#获取包数据中内置的rao联系矩阵("time_mats") #运行MultiCompare con_tads <- ConsensusTADs(time_mats, resolution = 50000)
##转换为nxn矩阵
##矩阵尺寸:704x704 ##矩阵尺寸:704x704
ConsensusTADs
返回两个数据帧。第一个数据帧,共识
,根据共识得分,包含所有包含共识TADs的区域。
头(con_tads共识美元)
##坐标样本1样本2样本3样本4 Consensus_Score ## 1 16900000 -0.6733709 -0.7751516 -0.7653696 -0.71937026 ## 2 17350000 3.6406563 2.3436229 3.0253018 0.7840556 2.68446232 ## 3 18850000 0.6372268 6.3662244 -0.7876844 6.9255446 3.50172562 ## 4 20700000 1.5667926 3.0968633 2.9130479 2.8300136 2.87153075 ## 5 22000000 -1.0079676 -0.7982571 0.6007264 3.1909178 -0.09876534 ## 6 22050000 -1.0405532 -0.9892242 -0.2675822 4.2737511 -0.62840320
列对应于具有显著边界分数的区域的坐标、每个区域的单独边界分数和共识分数。
第二个数据帧,All_Regions
,与共识
数据帧,但它包括基因组的每个区域,出现在两个矩阵中。
头(con_tads All_Regions美元)
1 16900000 -0.6733709 -0.7751516 -0.7653696 15.1272252 -0.7193703 ## 2 16950000 -0.6343671 -0.6624276 -0.4107173 -0.6656620 -0.6483973 ## 3 17000000 -1.0409280 -0.7618272 0.7910678 -1.0008876 -0.8813574 ## 4 17050000 -0.9199917 -0.7123180 - 0.6712399 -0.8254422 -0.7688801 ## 5 17100000 -0.6097913 -0.4785485 -0.6232367 -0.2095729 -0.5441699 ## 6 17150000 -0.7215028 -0.5669957 0.2413230 -0.6001333
sessionInfo ()
## R版本4.2.1(2022-06-23)##平台:x86_64-pc-linux-gnu(64位)##运行在Ubuntu 20.04.5 LTS ## ##矩阵产品:默认## BLAS: /home/biocbuild/bbs-3.16-bioc/R/lib/libRblas。/home/biocbuild/bbs-3.16-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_phone = c# # [11] LC_MEASUREMENT=en_US。UTF-8 LC_IDENTIFICATION=C ## ##附加的基础包:## [1]stats4 stats graphics grDevices utils datasets methods ##[8]基础## ##其他附加包:## [1]rGREAT_2.0.0 GenomicRanges_1.50.0 GenomeInfoDb_1.34.0 ## [4] IRanges_2.32.0 S4Vectors_0.36.0 BiocGenerics_0.44.0 ## [7] microbenchmark_1.4.9 TADCompare_1.8.0 SpectralTAD_1.14.0 ## [10] dplyr_1.0.10 BiocStyle_2.26.0 ## ##通过命名空间加载(且未附加):# # # # [1] utf8_1.2.2 [2] R.utils_2.12.1 # # [3] tidyselect_1.2.0 # # [4] RSQLite_2.2.18 # # [5] AnnotationDbi_1.60.0 # # [6] htmlwidgets_1.5.4 # # [7] grid_4.2.1 # # [8] BiocParallel_1.32.0 # # [9] munsell_0.5.0 # # [10] codetools_0.2-18 # # [11] DT_0.26 # # [12] future_1.28.0 # # [13] CGHbase_1.58.0 # # [14] withr_2.5.0 # # [15] QDNAseq_1.34.0 # # [16] colorspace_2.0-3 # # [17] Biobase_2.58.0 # # [18] filelock_1.0.2 # # [19] TxDb.Hsapiens.UCSC.hg38.knownGene_3.16.0 # # [20] highr_0.9 # # [21] knitr_1.40 # # [22]CGHcall_2.60.0 # # [23] ggsignif_0.6.4 # # [24] listenv_0.8.0 # # [25] labeling_0.4.2 # # [26] MatrixGenerics_1.10.0 # # [27] GenomeInfoDbData_1.2.9 # # [28] farver_2.1.1 # # [29] bit64_4.0.5 # # [30] pheatmap_1.0.12 # # [31] rhdf5_2.42.0 # # [32] parallelly_1.32.1 # # [33] vctrs_0.5.0 # # [34] generics_0.1.3 # # [35] TH.data_1.1-1 # # [36] xfun_0.34 # # [37] BiocFileCache_2.6.0 # # [38] R6_2.5.1 # # [39] doParallel_1.0.17 # # [40] HiCcompare_1.20.0 # # [41] bitops_1.0-7 # # [42] rhdf5filters_1.10.0 # # [43]cachem_1.0.6 # # [44] DelayedArray_0.24.0 # # [45] assertthat_0.2.1 # # [46] promises_1.2.0.1 # # [47] BiocIO_1.8.0 # # [48] scales_1.2.1 # # [49] multcomp_1.4-20 # # [50] gtable_0.3.1 # # [51] globals_0.16.1 # # [52] sandwich_3.0-2 # # [53] rlang_1.0.6 # # [54] GlobalOptions_0.1.2 # # [55] splines_4.2.1 # # [56] rtracklayer_1.58.0 # # [57] rstatix_0.7.0 # # [58] impute_1.72.0 # # [59] broom_1.0.1 # # [60] BiocManager_1.30.19 # # [61] yaml_2.3.6 # # [62] reshape2_1.4.4 # # [63] abind_1.4-5 # # [64]GenomicFeatures_1.50.0 # # [65] backports_1.4.1 # # [66] httpuv_1.6.6 # # [67] tools_4.2.1 # # [68] bookdown_0.29 # # [69] ggplot2_3.3.6 # # [70] ellipsis_0.3.2 # # [71] jquerylib_0.1.4 # # [72] RColorBrewer_1.1-3 # # [73] DNAcopy_1.72.0 # # [74] Rcpp_1.0.9 # # [75] plyr_1.8.7 # # [76] progress_1.2.2 # # [77] zlibbioc_1.44.0 # # [78] purrr_0.3.5 # # [79] rcurl_1.98 - 1.9 # # [80] prettyunits_1.1.1 # # [81] ggpubr_0.4.0 # # [82] GetoptLong_1.0.5 # # [83] cowplot_1.1.1 # # [84] zoo_1.8-11 # # [85] cluster_2.1.4 # # [86]SummarizedExperiment_1.28.0 # # [87] magrittr_2.0.3 # # [88] data.table_1.14.4 # # [89] magick_2.7.3 # # [90] circlize_0.4.15 # # [91] mvtnorm_1.1-3 # # [92] matrixStats_0.62.0 # # [93] xtable_1.8-4 # # [94] hms_1.1.2 # # [95] mime_0.12 # # [96] evaluate_0.17 # # [97] xml_3.99 - 0.12 # # [98] gridExtra_2.3 # # [99] shape_1.4.6 # # [100] compiler_4.2.1 # # [101] biomaRt_2.54.0 # # [102] tibble_3.1.8 # # [103] KernSmooth_2.23-20 # # [104] crayon_1.5.2 # # [105] R.oo_1.25.0 # # [106] htmltools_0.5.3 # # [107] mgcv_1.8-41 ## [108] later_1.3.0 ## [109] tidyr_1.2.1 ## [110] DBI_1.1.3 ## [111] dbplyr_2.2.1 ## [112] MASS_7.3-58.1 ## [113] rappdirs_0.3.3 ## [114] Matrix_1.5-1 ## [115] car_3.1-1 ## [116] cli_3.4.1 ## [117] marray_1.76.0 ## [118] R.methodsS3_1.8.2 ## [119] parallel_4.2.1 ## [120] pkgconfig_2.0.3 ## [121] TxDb.Hsapiens.UCSC.hg19.knownGene_3.2.2 ## [122] GenomicAlignments_1.34.0 ## [123] xml2_1.3.3 ## [124] InteractionSet_1.26.0 ## [125] foreach_1.5.2 ## [126] bslib_0.4.0 ## [127] XVector_0.38.0 ## [128] stringr_1.4.1 ## [129] digest_0.6.30 ## [130] Biostrings_2.66.0 ## [131] rmarkdown_2.17 ## [132] restfulr_0.0.15 ## [133] curl_4.3.3 ## [134] shiny_1.7.3 ## [135] Rsamtools_2.14.0 ## [136] gtools_3.9.3 ## [137] PRIMME_3.2-3 ## [138] rjson_0.2.21 ## [139] lifecycle_1.0.3 ## [140] nlme_3.1-160 ## [141] jsonlite_1.8.3 ## [142] Rhdf5lib_1.20.0 ## [143] carData_3.0-5 ## [144] limma_3.54.0 ## [145] fansi_1.0.3 ## [146] pillar_1.8.1 ## [147] lattice_0.20-45 ## [148] KEGGREST_1.38.0 ## [149] fastmap_1.1.0 ## [150] httr_1.4.4 ## [151] survival_3.4-0 ## [152] GO.db_3.16.0 ## [153] glue_1.6.2 ## [154] png_0.1-7 ## [155] iterators_1.0.14 ## [156] bit_4.0.4 ## [157] stringi_1.7.8 ## [158] sass_0.4.2 ## [159] blob_1.2.3 ## [160] org.Hs.eg.db_3.16.0 ## [161] memoise_2.0.1 ## [162] future.apply_1.9.1
克雷斯韦尔,克莱伦G,约翰C斯坦斯菲尔德,米哈伊尔G多兹莫洛夫。“SpectralTAD:一个R包,用于使用光谱聚类定义拓扑相关域的层次结构。”bioRxiv, 549170年。https://doi.org/10.1101/549170.
Rao, Suhas s.p.,黄苏辰,Brian Glenn St Hilaire, Jesse M. Engreitz, Elizabeth M. Perez, Kyong-Rim Kieffer-Kwon, Adrian L. Sanborn等。2017。“内聚缺失消除了所有环域。”细胞171 (2): 305-320.e24。https://doi.org/10.1016/j.cell.2017.09.026.
Rao, Suhas s.p., Miriam H. Huntley, Neva C. Durand, Elena K. Stamenova, Ivan D. Bochkov, James T. Robinson, Adrian L. Sanborn等。2014。“千碱基分辨率的人类基因组3D地图揭示了染色质循环的原理。”细胞159(7): 1665-80。https://doi.org/10.1016/j.cell.2014.11.021.
Schmitt, Anthony D,胡明,Jung Inkyung,徐峥,邱云江,Catherine L Tan,李云,等。2016。染色质接触图的简编揭示了人类基因组中的空间活跃区域。细胞代表17(8): 2042-59。https://doi.org/10.1016/j.celrep.2016.10.061.