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> | 自定义背景文件 |
-rna | RNA 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 输出列¶
| 列名 | 说明 |
|---|---|
PeakID | Peak 编号 |
Chr | 染色体 |
Start/End | 起止位置 |
Strand | 链 |
Distance to TSS | 距最近 TSS 距离 |
Nearest Promoter ID | 最近基因 |
Annotation | 基因组区域注释(exon, intron, promoter 等) |
参考资料¶
- 官网教程: http://homer.ucsd.edu/homer/
- 完整命令文档: http://homer.ucsd.edu/homer/doc.html
- 安装文档:
/share/home/software/package/homer/README-install.md
本站总访问量 次