首页 > 其他分享 >ChIP-seq 分析:GO 功能测试与 Motifs 分析(12)

ChIP-seq 分析:GO 功能测试与 Motifs 分析(12)

时间:2023-03-11 13:34:44浏览次数:53  
标签:MEME 12 seq ChIP library 功能测试 基序 我们 BSgenome

动动发财的小手,点个赞吧!

1. 包加载

我们可以使用 rGREAT 包中提供的 GREAT Bioconductor 接口。

library(rGREAT)

2. GO和功能测试

要提交作业,我们可以使用 Myc 峰的 GRanges 并使用 submitGreatJob 函数指定基因组。

此函数返回一个 GreatJob 对象,其中包含对我们在 GREAT 服务器上的结果的引用。要查看可用结果的类别,我们可以在 GreatJob 对象上使用 availableCategories 函数。

great_Job <- submitGreatJob(macsPeaks_GR, species = "mm10", version = "3.0.0", request_interval = 1)
availableCategories(great_Job)

availableCategories

可以使用 getEnrichmentTables 函数检索结果表并指定我们希望查看的表。

在这里,我们检索包含 2 个独立数据库结果的“Regulatory Motifs”基因集的结果表。

great_ResultTable = getEnrichmentTables(great_Job, category = "Regulatory Motifs")
names(great_ResultTable)

great_ResultTable

现在我们可以在“MSigDB 预测的启动子基序”基因集的 TSS 中使用 Myc 峰查看我们的基因的富集情况。

msigProMotifs <- great_ResultTable[["MSigDB Predicted Promoter Motifs"]]
msigProMotifs[1:4, ]

msigProMotifs

3. Motifs 分析

3.1. Motifs

转录因子 ChIPseq 的一个常见做法是研究峰下富集的基序。可以在 R/Bioconductor 中进行从头富集基序,但这可能非常耗时。在这里,我们将使用在线提供的 MEME-ChIP 套件来识别新的基序。

MEME-ChIP 需要一个包含峰下序列的 FASTA 文件作为输入,因此我们使用 BSgenome 包提取它。

3.2. 序列提取

首先,我们需要为我们正在处理的基因组加载 BSgenome 对象,UCSC 为小鼠基因组构建的 mm10,BSgenome.Mmusculus.UCSC.mm10。

library(BSgenome)
library(BSgenome.Mmusculus.UCSC.mm10)
BSgenome.Mmusculus.UCSC.mm10

BSgenome.Mmusculus.UCSC.mm10

我们现在有一个 GRanges,以山顶为中心,每个山峰的最高信号点。

macsSummits_GR

macsSummits_GR

一旦我们使峰重新居中,我们就可以将 getSeq 函数与调整大小的常见峰的 GRanges 和 mm10 的 BSgenome 对象一起使用。

getSeq 函数返回包含峰下序列的 DNAStringSet 对象。

peaksSequences <- getSeq(BSgenome.Mmusculus.UCSC.mm10, macsSummits_GR)
names(peaksSequences) <- paste0(seqnames(macsSummits_GR), ":", start(macsSummits_GR),
    "-", end(macsSummits_GR))

peaksSequences[1:2, ]

peaksSequences

3.3. 写入 FASTA 文件

writeXStringSet 函数允许用户将 DNA/RNA/AA(氨基酸)StringSet 对象写入文件。默认情况下,writeXStringSet 函数以 FASTA 格式写入序列信息(根据 MEME-ChIP 的要求)。

writeXStringSet(peaksSequences, file = "mycMel_rep1.fa")

3.4. MEME-ChIP

现在文件“mycMel_rep1.fa”包含适合 MEME-ChIP 中 Motif 分析的峰几何中心周围的序列。

在您自己的工作中,您通常会在本地安装了 MEME 的笔记本电脑上运行它,但今天我们会将生成的 FASTA 文件上传到他们的门户网站。按照此处的说明在本地安装 MEME。可以在此处找到 MEME-ChIP 的结果文件

3.5. 结果解析

我们可以从 FIMO 输出中检索 MEME-ChIP 中识别的 Myc 基序的位置。

FIMO 将 Myc 基序位置报告为 GFF3 文件,我们应该能够在 IGV 中对其进行可视化。遗憾的是,这个 GFF 文件的命名约定只导致报告了一小部分图案。

3.6. FIMO to R

幸运的是,我们可以将 motif 的 GFF 文件解析为 R 并使用 rtracklayer 包中的导入函数解决这个问题。

library(rtracklayer)
motifGFF <- import("~/Downloads/fimo.gff")

3.7. 获取有效 GFF3

我们可以给序列一些更合理的名称并将 GFF 导出到文件以在 IGV 中可视化。

motifGFF$Name <- paste0(seqnames(motifGFF), ":", start(motifGFF), "-", end(motifGFF))
motifGFF$ID <- paste0(seqnames(motifGFF), ":", start(motifGFF), "-", end(motifGFF))
export.gff3(motifGFF, con = "~/Downloads/fimoUpdated.gff")

fimoUpdated

3.8. 扫描已知 motifs

我们之前看到我们可以使用一些 Biostrings 功能 matchPattern 来扫描序列。通常使用 ChIPseq,我们可能知道我们正在寻找的基序,或者我们可以使用来自数据库(例如 JASPAR)的一组已知基序。

library(JASPAR2020)
JASPAR2020

JASPAR2020

3.9. 使用 TFBStools 从 JASPAR 获取 motifs

我们可以使用 TFBSTools 包及其 getMatrixByName 函数访问我们感兴趣的motif的模型。

library(TFBSTools)
pfm <- getMatrixByName(JASPAR2020, name = "MYC")
pfm

pfm

3.10. 使用 motifmathr 进行 motifs 扫描

有了这个 PWM,我们可以使用 motifmathr 包来扫描我们的山峰以寻找 Myc motif并返回motif的位置。
我们需要提供我们的 PWM、要在内部扫描的 GRanges 和要从中提取序列的 BSGenome 对象。我们还将输出参数设置为这个实例的位置。

library(motifmatchr)
MycMotifs <- matchMotifs(pfm, macsSummits_GR, BSgenome.Mmusculus.UCSC.mm10, out = "positions")
MycMotifs

MycMotifs

3.11. 导出匹配的 motifs

我们可以导出峰内的 Myc 基序位置,以便稍后在 IGV 中使用或用于元图可视化。

export.bed(MycMotifs[[1]], con = "MycMotifs.bed")

本文由mdnice多平台发布

标签:MEME,12,seq,ChIP,library,功能测试,基序,我们,BSgenome
From: https://www.cnblogs.com/swindler/p/17205737.html

相关文章

  • CF1795 G.Removal Sequences - 题解
    记\(N(u)\)表示图上与点\(u\)相邻的点,\(p_u=deg_u-a_u\),其中\(deg_u\)为无向图上点\(u\)的度数。首先要删除\(p_u=0\)的点,同时\(\forallv\inN(u),p_v......
  • 12.主从复制
    1.复制原理:slave从master主机读取binlog日志进行数据同步;  2.复制的规则:每个slave只有一个master;每个slave只能有一个唯一服务器ID每个master可以有......
  • 12N65-ASEMI高压MOS管12N65
    编辑-Z12N65在TO-220封装里的静态漏极源导通电阻(RDS(ON))为0.68Ω,是一款N沟道高压MOS管。12N65的最大脉冲正向电流ISM为48A,零栅极电压漏极电流(IDSS)为10uA,其工作时耐温度......
  • CCF 2017-12
    一:试题编号:2017-12-1试题名称:最小差值时间限制:1.0s内存限制:256.0MB问题描述:问题描述 给定n个数,请找出其中相差(差的绝对值)最小的两个数,输出它们的差值的绝对值。输入格式......
  • Windows Server 2012上安装.NET Framework 3.5
    1、打开服务器管理器 首先,打开服务器管理器,点击左侧的“仪表盘”,如下图所示。2、添加角色和功能点击上图中的“添加角色和功能”,弹出下图所示“添加角色和功能向导”......
  • 1213
    include<Windows.h>include"framework.h"LRESULTCALLBACKWindowsProc(InHWNDhWnd,InUINTMsg,InWPARAMwParam,InLPARAMlParam);//__stdcall参数的传入......
  • 【812】github markdown, resize image
    Ref:HowtochangeimagesizeinMarkdownRef:MarkdownCheatsheet <imgsrc="https://github.com/epiwatch/ews-gis/blob/develop/analysis/redflag/StaticHotspot......
  • Odoo 部署windows server 2012
    需要安装前置补丁#clearcompressionflag.exe、KB2919442、KB2919355、KB2932046、KB2959977、KB2937592、KB2938439、KB2934018。使用odoo14官网安装包#地址:https://ww......
  • 好客租房120-在脚手架中使用sass
    1打开脚手架的文档添加sass样式2安装sassyarnaddnode-sass3创建后缀名称为scss或者sass的文件4引入文件渲染文件.nav{padding:10px;img{width:48......
  • kaldi在linux上编译,Ubuntu 12.04下编译安装Kaldi https://blog.csdn.net/we
    因为同事工作需要kaldi,所以安装过程有点麻烦。在此记录一下折腾的过程。OS:Ubuntu 12.04(amd64)kaldi的下载地址 http://svn.code.sf.net/p/kaldi/code/ 我这里下......