beagle 的使用方法和参数信息

时间:2025-05-07 14:05:44

一、基本使用场景
1. 单倍型推断(Phasing)
将未分型的基因型数据(如 VCF/BCF 文件)推断为单倍型。

java -jar beagle.jar \
  gt=input.vcf.gz \       # 输入基因型数据(需bgzip压缩)
  out=phased_output       # 输出文件前缀(自动生成 .vcf.gz 和 .log)

2. 基因型填充(Imputation)
使用参考面板填充目标数据中的缺失基因型。

java -jar beagle.jar \
  gt=target.vcf.gz \      # 待填充的目标数据
  ref=reference.vcf.gz \  # 参考面板(如千人基因组)
  out=imputed_output      # 输出文件名前缀

二、核心参数说明

参数 作用 示例值
gt 输入基因型数据(VCF/BCF) gt=data.vcf.gz
ref 参考面板文件(用于填充) ref=1kgp.vcf.gz
out 输出文件前缀 out=result
nthreads 使用的CPU线程数 nthreads=4
window 分析窗口大小(cM) window=40
impute 强制填充缺失基因型 impute=true
Xmx Java堆内存分配 java -Xmx8g -jar beagle.jar ...

三、进阶使用示例
1. 使用参考面板和外部遗传图谱

java -jar beagle.jar \
  gt=target.vcf.gz \
  ref=reference.vcf.gz \
  map=genetic_map.b37.txt \  # 遗传图谱文件(染色体位置→cM)
  out=imputed_with_map

2. 多线程加速(推荐用于大型数据)

java -Xmx16g -jar beagle.jar \  # 分配 16GB 内存
  gt=large_data.vcf.gz \
  nthreads=8 \                  # 使用8个CPU线程
  out=fast_phasing

四、输入文件准备

  1. VCF文件压缩和索引:

    bgzip input.vcf           # 压缩为 .vcf.gz
    tabix -p vcf input.vcf.gz # 生成索引文件 .tbi
    
  2. 参考面板下载:
    • 千人基因组计划参考面板(1KGP):

    wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/release/20130502/
    

五、输出文件说明
phased_output.vcf.gz:分型/填充后的结果(bgzip压缩)。

phased_output.log:运行日志(检查错误和耗时)。

phased_output.phased.vcf.gz(旧版本可能生成此文件)。


六、常见问题
1. 内存不足(OutOfMemoryError)
增加Java堆内存(如分配32GB):

java -Xmx32g -jar beagle.jar ...

2. 输入文件格式错误
• 错误信息:Invalid VCF headerCould not read input file

• 解决:

  1. bcftools 验证文件:
    bcftools view input.vcf.gz
    
  2. 确保文件用 bgzip(而非 gzip)压缩。

3. 参考面板与目标数据不兼容
• 表现:填充后结果异常或报错。

• 解决:确保参考面板和目标数据的基因组版本一致(如 hg19 vs. hg38)。


七、参考资源
• 官方文档:http://faculty.washington.edu/browning/beagle/beagle_5.4_08Jul22.pdf

• 示例数据集:https://github.com/chrchang/beagle-examples