分析测试百科网

搜索

分析测试百科网 > 行业资讯 > 微信文章

【第三篇|建模与推断】甲基化芯片分析工具SeSAMe教程

Illumina因美纳
2023.9.19

前两期我们给您介绍了因美纳目前提供的三种主要的甲基化芯片产品和它们在肿瘤和遗传领域的典型应用。这一期我们来聊一聊甲基化芯片在感染和农业以及其他领域的应用,以及如何利用甲基化芯片分析工具SeSAMe对芯片数据进行建模与推断分析。

在 COVID-19 大流行时期,由凯瑟琳·巴恩斯博士领导的科罗拉多大学进行了一次大型 EWAS研究。这项研究涉及来自受 COVID-19 影响的个人、对照受试者和受其他呼吸道病毒影响的个体的样本。对每组DNA甲基化进行分析,并针对每种疾病状况发现不同的甲基化特征。甲基化方法不仅检测到这种疾病,而且还以惊人的准确性预测了个体COVID-19感染后的疾病结果,即感染者是否需要住院治疗、入住ICU的可能性和死亡率等。

Konigsberg, I.R., Barnes, B., Campbell, M. et al. Host methylation predicts SARS-CoV-2 infection and clinical outcome. Commun Med 1, 42 (2021).

研究显示,甲基化图谱与炎症反应和对免疫反应的调节机制密切相关。传统的宏基因组(mNGS)分析并没有整合来自宿主的反应信息,而甲基化图谱可以被用于判定宿主的损伤是感染还是非感染以及损伤严重程度,因而可以被用于作为器官移植手术如肾移植术后并发症预测和监测的一种生物标志物。相较于RNA或蛋白质,DNA甲基化是一种更容易获得的生物标志物,并且会在移植过程中不同的时间点以及随后的短期和长期随访中呈现动态变化,因而实时的获得更详尽的甲基化图谱信息也将为新治疗策略的开发提供更多可能。

Cristoferi I, Giacon TA, Boer K, van Baardwijk M, Neri F, Campisi M, Kimenai HJAN, Clahsen-van Groningen MC, Pavanello S, Furian L, Minnee RC. The applications of DNA methylation as a biomarker in kidney transplantation: a systematic review. Clin Epigenetics. 2022 Feb 7;14(1):20. doi: 10.1186/s13148-022-01241-7. PMID: 35130936; PMCID: PMC8822833.

甲基化图谱可以提供关于细胞状态与环境相关的重要信息,因而可以被用于畜牧业动物福利的监测以及来源地的追溯。例如有研究显示,通过对甲基化图谱的监测,我们可以发现表观遗传特征从一个环境转移到另一个环境时的依赖性转换,从而鉴定鲑鱼中的河流特异性特征、鸡肉中的农场特异性特征等,这就为农业畜牧业中动物产品来源的追溯和认证、动物健康程度、动物福利监督等应用鉴定提供了更多的可行性和可能性。

Whelan R, Tönges S, Böhl F and Lyko F (2023) Epigenetic biomarkers for  animal welfare monitoring. Front. Vet. Sci. 9:1107843. Doi: 10.3389/fvets.2022.1107843

Venkatesh G, Tönges S, Hanna K, Ng YL, Whelan R, Andriantsoa R, Lingenberg A, Roy S, Nagarajan S, Fong S, Raddatz G, Böhl F, Lyko F. Context-dependent DNA methylation signatures in animal livestock. Environ Epigenet. 2023 Jan 23;9(1):dvad001. doi: 10.1093/eep/dvad001. PMID: 36936885; PMCID: PMC10019019.

DNA甲基化研究的一个新兴领域是衰老。衰老与整个生命周期中DNA甲基化的整体损失有关。加州大学洛杉矶分校的Steve Horvath博士开发了许多表观遗传衰老时钟,可以从DNA甲基化谱中预测实际年龄。表观遗传年龄现在正在被探索为一般健康和保健的潜在生物标志物。如果一个人的表观遗传年龄高于实际年龄,则他们的衰老加速,这往往与更高的衰老相关疾病发病率和早期死亡率相关。整体健康和保健通常与较慢的衰老速度有关,其定义是表观遗传年龄低于实际年龄。

Horvath, S., Raj, K. DNA methylation-based biomarkers and the epigenetic clock theory of ageing. Nat Rev Genet 19, 371–384 (2018).

研究表明,DNA甲基化表征可以因为日常生活中的环境暴露风险而改变,这些环境因素包含但不限于空气污染、重金属纳入、吸烟或二手烟暴露、酒精摄入程度等。而这些甲基化表征一旦被建立,即便风险因素被移除,也可能会继续存在相当长的时间。这些甲基化表征在不同个体和个体的不同器官组织内也存在一定的差异。同时甲基化表征还能一定程度上反应风险因素暴露的时间长度和严重程度,例如偶尔吸烟和重度吸烟人员的甲基化图谱存在明显差异。因此,测试甲基化图谱可以实时的捕获过去和现在的环境风险暴露因素,也可以更好的了解人类疾病的发生和进展情况,有助于更好的健康管理。

Nwanaji-Enwerem JC, Colicino E. DNA Methylation-Based Biomarkers of Environmental Exposures for Human Population Studies. Curr Environ Health Rep. 2020 Jun;7(2):121-128. doi: 10.1007/s40572-020-00269-2. PMID: 32062850.

操作脚本

BiocManager::install("SummarizedExperiment")

BiocManager::install("tidyverse")

library(sesame)

library(SummarizedExperiment)

library(tidyverse)

packageVersion(“sesame”)

se = sesameDataGet("MM285.10.SE.tissue")[1:1000,]

meta = dplyr::select(as_tibble(colData(se)),IDAT,sex,age,tissue)

meta$sex = relevel(factor(meta$sex),ref="Female")

meta$tissue=relevel(factor(meta$tissue),ref="Colon")

str(meta)

betas = assay(se)

ok1=checkLevels(betas,meta$sex)

sum(ok1)

betas[which(!ok1)[1],]

ok3=checkLevels(betas,meta$tissue)

betas = betas[ok1&ok3,]

dim(betas)

BiocManager::install("dml")

library(dml)

smry=DML(betas,~sex+age+tissue,meta=meta)

smry

smry[[1]]

res = summaryExtractTest(smry)

dim(res)

colnames(res)

res %>% arrange(Est_age) %>% dplyr::select(Est_age,Pval_age) %>% tail

ggplot(tibble(betaValue=assay(se)[res$Probe_ID[nrow(res)],],age=meta$age),aes(age,betaValue))+geom_point()+geom_smooth(method="lm")

ggplot(tibble(betaValue=betas["cg00116289_BC21",],age=meta$age),aes(age,betaValue))+geom_point()+geom_smooth(method="lm")

res %>% arrange(Est_sexMale) %>% dplyr::select(Est_sexMale,Pval_sexMale) %>% head()

with(res,plot(Est_sexMale,-log10(Pval_sexMale),xlab="Delta Beta",ylab="-log10(P-value)"))

mappingEPIC<-sesameAnno_get("EPIC/hg38.tsv.gz")

left_join(data.frame(res %>% filter(Est_sexMale > 0.1, Pval_sexMale < 0.05)),mappingEPIC,by="Probe_ID") %>% with(table(CpG_chrm))

res %>% dplyr::filter(Eff_tissue>0.1,FPval_tissue<0.01) %>% arrange(-Eff_tissue) %>% dplyr::select(Eff_tissue,FPval_tissue) %>% head()

withref = res %>% dplyr::select(starts_with("Est_tissue")) %>% mutate(Est_tissueColon = 0)

apply(withref - apply(withref,1,median),2,function(x) sum(x < -0.3))

barplot(apply(withref - apply(withref,1,median),2,function(x) sum(x < -0.3)),las=2)

dmContrasts(smry)

merged=DMR(betas,smry,"sexMale")

sh = sesameDataGet(“EPIC.1.SigDF”)

sm = sesameDataGet(“MM285.1.SigDF”)

BiocManager::install("randomForest")

mapping<-sesameAnno_get("HM450/hg38.tsv.gz")

left_join(pOOBAH(sh),mapping,by="Probe_ID") %>% dplyr::filter(CpG_chrm == "chrY") %>% with(sum(mask)/length(mask))

inferSexKaryotypes(sh)

inferEthinicity(sh)

inferStrain(sm,return.strain=TRUE)

inferStrain(sm,return.probability=TRUE)

sort(inferStrain(sm,return.probability=TRUE),decreasing=TRUE)

predictAge(getBetas(sh,mask=FALSE),sesameAnno_get("Anno/HM450/Clock_Horvath353.rds"))

predictAge(getBetas(sm,mask=FALSE),sesameAnno_get("Anno/MM285/Clock_Zhou347.rds"))

predictAge(getBetas(dyeBiasNL(noob(sm)),mask=FALSE),sesameAnno_get("Anno/MM285/Clock_Zhou347.rds"))

BiocManager::install("DNAcopy")

segs <-cnSegmentation(sh)

visualizeSegments(segs)

betas = sesameDataGet(“HM450.1.TCGA.PAAD”)$betas

estimateLeukocyte(betas)

compareReference(sesameDataGet("MM285.tissueSignature"),getBetas(sm))

.

发布需求
作者
头像
仪器推荐
文章推荐