跳转至

homer

项目地址 http://homer.ucsd.edu/homer/

快速开始

module load arm/homer/5.1

加载后即可使用所有 HOMER 命令。


基因组数据下载

HOMER 需要基因组注释数据才能进行分析。首次使用前,需下载对应物种数据。

查看可用物种

perl /share/home/software/package/homer/configureHomer.pl -list

下载物种数据

# 下载到公共目录(需有写权限)
perl /share/home/software/package/homer/configureHomer.pl -install rice

# 或下载到自己的目录(推荐)
mkdir -p ~/homer_data
export HOMER_DATA=~/homer_data
perl /share/home/software/package/homer/configureHomer.pl -install human-o   # 人类
perl /share/home/software/package/homer/configureHomer.pl -install mouse     # 小鼠
perl /share/home/software/package/homer/configureHomer.pl -install rice      # 水稻
perl /share/home/software/package/homer/configureHomer.pl -install arabidopsis-o  # 拟南芥

注意:如果使用自定义 HOMER_DATA 目录,每次运行分析前需 export HOMER_DATA=~/homer_data


典型分析流程

1. FASTQ 质控与预处理

# 去除 adapter 和低质量序列
homerTools trim input.fastq -o trimmed.fastq

# 查看 FASTQ 质量统计
homerTools freq input.fastq > quality.txt

2. 比对与创建 Tag Directory

比对后的文件(BED/BAM/SAM)需要转换为 HOMER 的 tag directory 格式:

# 从 BED/BAM/SAM 文件创建 tag directory
makeTagDirectory mySample_tagDir/ -style bed mySample.bed
makeTagDirectory mySample_tagDir/ mySample.bam

# 配对末端数据
makeTagDirectory mySample_tagDir/ mySample.bam -fragLength pe

# 合并多个 replicate
makeTagDirectory combined_tagDir/ rep1_tagDir/ rep2_tagDir/

3. Peak Calling

# 转录因子 ChIP-Seq
findPeaks mySample_tagDir/ -style factor -i input_tagDir/ -o autoFDR

# 组蛋白修饰
findPeaks mySample_tagDir/ -style histone -i input_tagDir/ -o autoFDR

# 输出结果保存到 mySample_tagDir/ 目录下的 peaks.txt 等文件

4. Peak 注释

# 注释 peak 位置(距 TSS、基因区域等)
annotatePeaks.pl peaks.txt hg38 > peak_annotation.txt

# 带 motif 扫描的注释
annotatePeaks.pl peaks.txt hg38 -m knownMotifs/ > peak_annotated.txt

# TSS 中心分析
annotatePeaks.pl tss hg38 -size 4000 > tss_annotation.txt

# 使用自定义 GTF 注释
annotatePeaks.pl peaks.txt hg38 -gtf custom.gtf > custom_annot.txt

5. Motif 发现

# 在基因组区域中发现 de novo motif(推荐用于 ChIP-Seq)
findMotifsGenome.pl peaks.txt hg38 motif_output/ -size 200 -len 8,10,12

# 在基因列表的启动子区域发现 motif
findMotifs.pl gene_list.txt promoter motif_output/ -len 8,10,12

# 屏蔽重复序列
findMotifsGenome.pl peaks.txt hg38r motif_output/ -size 200 -mask

# 仅搜索已知 motif(不做 de novo 发现)
findMotifsGenome.pl peaks.txt hg38 motif_output/ -noknown

# 仅做 de novo 发现(不搜索已知 motif)
findMotifsGenome.pl peaks.txt hg38 motif_output/ -nomotif

# RNA motif 分析
findMotifs.pl gene_list.txt promoter motif_output/ -rna

6. 差异 Peak 分析

# 使用 replicates 做差异 peak 分析
getDifferentialPeaksReplicates.pl \
    -t sampleA_rep1_tagDir/ sampleA_rep2_tagDir/ \
    -b sampleB_rep1_tagDir/ sampleB_rep2_tagDir/ \
    -i input_tagDir/ \
    -f 2 -q 0.05 \
    > diff_peaks.txt

# 使用已有的 peak 文件
getDifferentialPeaksReplicates.pl \
    -t sampleA_rep1_tagDir/ sampleA_rep2_tagDir/ \
    -b sampleB_rep1_tagDir/ sampleB_rep2_tagDir/ \
    -use peaks.txt \
    > diff_peaks.txt

7. GO 富集分析

# 从 peak 结果做 GO 分析
findGO.pl gene_list.txt hg38 > go_results.txt

# 输出文本格式
findGOtxt.pl gene_list.txt hg38 > go_results.txt

8. 可视化

# 生成 bigWig 文件用于 IGV/JBrowse 查看
makeBigWig.pl mySample_tagDir/ output.bw

# 生成 UCSC Genome Browser hub
makeMultiWigHub.pl sample1_tagDir/ sample2_tagDir/ -o hub_output/

# 生成 metagene profile
makeMetaGeneProfile.pl peaks.txt mySample_tagDir/ > metagene.txt

Hi-C 数据分析

# 从比对文件创建 Hi-C tag directory
makeTagDirectory hic_tagDir/ hic_alignment.bam -style hic

# 寻找 TADs 和 loops
findTADsAndLoops.pl hic_tagDir/ > tad_loop_results.txt

# 寻找 compartments
findHiCCompartments.pl hic_tagDir/ > compartments.txt

# 生成 Hi-C 矩阵
makeHiCMatrix.pl hic_tagDir/ > hic_matrix.txt

# Hi-C PCA 分析
runHiCpca.pl hic_tagDir/ > pca_results.txt

常用参数速查

findMotifsGenome.pl

参数说明
-size <#>分析区域大小,默认 200bp
-size given使用输入文件的实际区域
-len <#>motif 长度,默认 8,10,12
-mask屏蔽重复序列
-S <#>优化的 motif 数量,默认 25
-N <#>背景序列数量
-bg <file>自定义背景文件
-rnaRNA motif 分析

annotatePeaks.pl

参数说明
-size <#>区域大小
-m <file>扫描指定 motif 文件
-gtf <file>使用自定义 GTF
-d <tagDir>关联 tag directory 计算 tag 数
-hist <#>距中心点的直方图 bins
-noadj不做多重检验校正

自定义基因组

如果内置物种不包含你需要的基因组:

# 1. 准备 FASTA 文件(每条染色体一个序列)
mkdir -p my_genome/
# 将 chr1.fa, chr2.fa, ... 放入 my_genome/

# 2. 准备 GTF 注释文件
# 保存为 my_genome/refGene.txt 格式

# 3. 预处理基因组
preparseGenome.pl my_genome/

# 4. 使用
findMotifsGenome.pl peaks.txt my_genome/ output/ -size 200

# 或使用 -genomeBg 指定背景
findMotifsGenome.pl peaks.txt my_genome/ output/ -genomeBg

常见问题

Q: 提示找不到基因组数据?

确保已下载对应物种数据,且 HOMER_DATA 环境变量正确设置:

export HOMER_DATA=/share/software/app/arm/homer/5.1/

Q: 水稻等物种数据怎么下载?

perl /share/home/software/package/homer/configureHomer.pl -install rice

Q: 如何加速 motif 搜索?

  • 使用 -len 8 只搜索较短的 motif
  • 使用 -N 50000 减少背景序列数量
  • 使用 -size 100 减小分析区域

Q: 内存不足?

  • 减少 -len 参数值
  • 使用 -S 10 减少优化的 motif 数量
  • 使用 -N 限制背景序列数量

输出结果说明

findMotifsGenome.pl 输出目录

文件/目录内容
homerMotifs/de novo 发现的 motif(PWM 格式)
knownResults/已知 motif 富集结果
motifLogos/motif 标志图(SVG/PNG)
seqs/提取的序列文件
config.txt分析参数记录

annotatePeaks.pl 输出列

列名说明
PeakIDPeak 编号
Chr染色体
Start/End起止位置
Strand
Distance to TSS距最近 TSS 距离
Nearest Promoter ID最近基因
Annotation基因组区域注释(exon, intron, promoter 等)

参考资料

本文阅读量  次
本站总访问量  次