美文网首页js css html
BS-Seq(3) -- 数据比对并提取甲基化位点

BS-Seq(3) -- 数据比对并提取甲基化位点

作者: Z_bioinfo | 来源:发表于2023-03-19 15:38 被阅读0次

    这里我们使用的软件是bismark ,但是需要调用bowtie2,所以先将这两个软件下载好,解压运行。

    构建甲基化比对基因组文件

    #软件安装
    conda install -c bioconda bismark bowtie2
    #基因组
    wget https://hgdownload.cse.ucsc.edu/goldenpath/hg19/bigZips/hg19.fa.gz
    gunzip hg19.fa.gz  
    bismark_genome_preparation /home/jimmy/my_data/ref_data/hg19
    

    运行成功后,会在fasta 所在目录生成如下的目录结构

    ├── Bisulfite_Genome
    │   ├── CT_conversion
    │   │   ├── BS_CT.1.bt2
    │   │   ├── BS_CT.2.bt2
    │   │   ├── BS_CT.3.bt2
    │   │   ├── BS_CT.4.bt2
    │   │   ├── BS_CT.rev.1.bt2
    │   │   ├── BS_CT.rev.2.bt2
    │   │   └── genome_mfa.CT_conversion.fa
    │   └── GA_conversion
    │       ├── BS_GA.1.bt2
    │       ├── BS_GA.2.bt2
    │       ├── BS_GA.3.bt2
    │       ├── BS_GA.4.bt2
    │       ├── BS_GA.rev.1.bt2
    │       ├── BS_GA.rev.2.bt2
    │       └── genome_mfa.GA_conversion.fa
    

    可以看到,分别对CT和GA转换的基因组建立了bowtie2的索引。

    比对

    # paired-end data
    bismark --genome /home/jimmy/my_data/ref_data/hg19 -1 read1.fastq.gz -2 read2.fastq.gz -p 4 -o ./ 2>test.log
    
    # single-end data
    bismark --genome /home/jimmy/my_data/ref_data/hg19 test_data.fastq -p 4 -o ./ 2>test.log
    # 输出
    ├── test_data_bismark_bt2.bam
    └── test_data_bismark_bt2_SE_report.txt
    

    查看BAM文件 samtools view test_data_bismark_bt2.bam | head -n5 :

    SRR020138.15024317_SALK_2029:7:100:1672:902_length=86        16      chr1    57798677        42      50M     *       0       0       TTCTTTCCCATCCCATAAATCCTAAAAATAATAAAAAATCATCCCCAAAT      @@:AC@<=+@?+8)@BCCCA=6BCCCCCCCCCCCCCCCCACB=<88BCCA      NM:i:11 MD:Z:14G2G6G0G0G0G4G1G1G0G10G1  XM:Z:..............z..h......hhhh....h.h.hh..........h. XR:Z:CT XG:Z:GA
    SRR020138.15024318_SALK_2029:7:100:1672:137_length=86        0       chr12   129774096       8       50M     *       0       0       AAAAAAAAAAAAAAGAAAAAAAAGAAAAAGAAAAGGAAAAGTAAAAAAAA      =@CAA=@B@CB=98%:AB?>@56/=3<=<)>B@:*=:=61%,<A@@1+12      NM:i:2  MD:Z:41C5G2     XM:Z:.........................................h........ XR:Z:CT XG:Z:CT
    SRR020138.15024319_SALK_2029:7:100:1672:31_length=86 0       chr2    10166575        42      50M     *       0       0       ATTTTGTTATAGAGTGGGGTATTTTCGGGAAGAAGGAGGAGGAGTGTATT      BCCCCBCCCCA?:=ACCBCABCCCCCBCCA??5=9@4BB@;??B@BABBA      NM:i:8  MD:Z:1C1C5C9C2C0C22C1C1 XM:Z:.h.x.....x.........h..hh.Z....................h.x. XR:Z:CT XG:Z:CT
    SRR020138.15024320_SALK_2029:7:100:1672:1164_length=86       16      chr5    28344472        8       50M     *       0       0       CACAAAATATCAACACCCCTAAACCCCACATTATTCAAAAATCAATTATA      @@@BBBA@A9=A@<?::2:<CB@?=:BBAC??CB@@BBBBC>:ACABCAB      NM:i:11 MD:Z:4G1G1G3G9G9G5G0G0G1T4G2    XM:Z:....x.h.h...x.........h.........h.....hhh......h.. XR:Z:CT XG:Z:GA
    SRR020138.15024321_SALK_2029:7:100:1672:433_length=86        0       chr14   38711099        42      50M     *       0       0       TTTTGAGTAGAGAAGTTAGTATTTTAGGGAATTTTTGATTTTTTTAAGTT      BCCBB?B@@A>@-4BBB:7@BBBCBBC@@=A@BCACA;BCBBCBB@@@BB      NM:i:14 MD:Z:0C0C13C0C6C0C6C0C1C3C0C1C0C1C5     XM:Z:hh.............hx......hx......hh.x...hh.hh.h..... XR:Z:CT XG:Z:CT
    

    甲基化call字符串对于BS-read中不涉及胞嘧啶的每个位置都用一个点 . 代替,或包含以下不同的胞嘧啶甲基化的字母 (大写=甲基化,小写=未甲基化) :

    X # 代表CHG中甲基化的C
    x # 代表CHG中非甲基化的C
    H # 代表CHH中甲基化的C
    h # 代表CHH中非甲基化的C
    Z # 代表CpG中甲基化的C
    z # 代表CpG中非甲基化的C
    U # 代表其他情况的甲基化C(CN或者CHN)
    u # 代表其他情况的非甲基化C (CN或者CHN)
    . # 该位置不是胞嘧啶
    

    去除重复

    deduplicate_bismark -s --bam test_data_bismark_bt2.bam
    # 输出
    ├── test_data_bismark_bt2.deduplicated.bam
    └── test_data_bismark_bt2.deduplication_report.txt
    #-p paired-end
    # -s single-end
    

    甲基化位点提取

    默认情况下,软件会自动根据 甲基化的C的类型 (CpG, CHG, CHH) 和 比对到四条链上 (OT, OB, CTOT, CTOB) 两个因素生成结果文件。

    OT – original top strand

    CTOT – complementary to original top strand

    OB – original bottom strand

    CTOB – complementary to original bottom strand

    bismark_methylation_extractor -s --gzip --bedGraph --buffer_size 10G --cytosine_report --comprehensive --genome_folder /home/jimmy/my_data/ref_data/hg19  test_data_bismark_bt2.bam 2>extracor.log
    #参数:
    #-p paired-end
    # -s single-end
    #--comprehensive 将可能的甲基化信息都输出,包括CHG,CHH,CpG
    #--no_overlap:对于双端读取,read_1和read_2理论上是可能重叠的。这个选项避免了重复的甲基化计算了2次。虽然这消除了对序列片段中心更多甲基化的计算偏差。
    #--bedGraph:输出bedGraph文件
    #--cytosine_report:输出全基因组所有的CpG。
    #--counts 计算bedGraph中有每个C上甲基化reads和非甲基化reads的数目
    #--buffer_size 指定内存
    #--report :产生甲基化的summary 文件
    #--genome_folder:参考基因组的路径
    #-o:输出文件路径
    

    生成处理报告

    bismark2report  --dir ./ --alignment_report test_data_bismark_bt2_SE_report.txt
    --dir指定结果的输出目录
    --alignment_report 指定比对产生的report文件的路径
    

    所有结果文件

    CHG_context_test_data_bismark_bt2.deduplicated.txt.gz
    CHH_context_test_data_bismark_bt2.deduplicated.txt.gz
    CpG_context_test_data_bismark_bt2.deduplicated.txt.gz
    test_data_bismark_bt2.deduplicated.bedGraph.gz
    test_data_bismark_bt2.deduplicated.bismark.cov.gz
    test_data_bismark_bt2.deduplicated.CpG_report.txt.CpG_report.txt.gz
    test_data_bismark_bt2.deduplicated_splitting_report.txt
    test_data_bismark_bt2.deduplicated.cytosine_context_summary.txt
    test_data_bismark_bt2.deduplicated.M-bias.txt
    SW480-WGBS_bismark_bt2.deduplicated_splitting_report.html
    

    结果解读

    --cytosine_report参数会根据当前目录下的信息文件生成一个HTML格式的报告文件,即test_data_bismark_bt2_SE_report.html文件,它包括了比对信息,甲基化信息,M-bias等,可以对数据有一个大概的认知(下图只展示了一部分):


    image.png
    image.png

    同时因为使用了--comprehensive,所以结果合并正反链的数据后会输出CpG/CHG/CHH三种类型的甲基化文件,包含了胞嘧啶所有的组合形式,但实际上我们自然最关注的是CpG位点的甲基化。其中

    CpG_context_test_data_bismark_bt2.deduplicated.txt即CpG甲基化位点的文件。

    head CpG_context_test_data_bismark_bt2.deduplicated.txt
    
    Bismark methylation extractor version v0.19.0
    SRR020138.15024317_SALK_2029:7:100:1672:902_length=86   -   1   57333019    z
    SRR020138.15024319_SALK_2029:7:100:1672:31_length=86    +   2   10026473    Z
    SRR020138.15024331_SALK_2029:7:100:1673:1282_length=86  +   11  78025243    Z
    SRR020138.15024343_SALK_2029:7:100:1673:202_length=86   +   10  121617231   Z
    SRR020138.15024357_SALK_2029:7:100:1673:879_length=86   -   4   75173715    z
    SRR020138.15024361_SALK_2029:7:100:1673:235_length=86   -   2   130768889   z
    SRR020138.15024368_SALK_2029:7:100:1673:123_length=86   +   10  106402850   Z
    SRR020138.15024376_SALK_2029:7:100:1673:1908_length=86  -   12  124097382   z
    SRR020138.15024380_SALK_2029:7:100:1673:397_length=86   +   8   95038627    Z
    # 第一列为测序信息
    # 第二列为甲基化状态 + 代表甲基化 -代表未甲基化
    # 第三列代表chromosome
    # 第四列代表location
    # 第五列代表methylation call,简单来说大写的就是甲基化的(因为还有CHG,CHH的数据,分别对应x, X , h, H)
    

    test_data_bismark_bt2.deduplicated.bismark.cov文件则给了每个位点的甲基化比例,为下一步确定CpG岛提供了基础,其数据形式如下:

    $head test_data_bismark_bt2.deduplicated.bismark.cov
    1   975476  975476  100 1   0
    1   975488  975488  100 1   0
    1   975490  975490  100 1   0
    1   2224487 2224487 100 1   0
    1   2224489 2224489 100 1   0
    1   2224514 2224514 100 1   0
    1   2224520 2224520 100 1   0
    1   2313220 2313220 0   0   1
    1   9313902 9313902 100 1   0
    1   9313914 9313914 100 1   0
    
    # 第一列代表chromosome
    # 第二,三列代表location
    # 第四列代表甲基化百分比
    # 第五列代表甲基化数目
    # 第六列代表未甲基化数目
    

    test_data_bismark_bt2.deduplicated.CpG_report.txt.CpG_report.txt文件则是背景信息:

    $head test_data_bismark_bt2.deduplicated.CpG_report.txt.CpG_report.txt
    1   10469   +   0   0   CG  CGC
    1   10470   -   0   0   CG  CGA
    1   10471   +   0   0   CG  CGG
    1   10472   -   0   0   CG  CGC
    1   10484   +   0   0   CG  CGG
    1   10485   -   0   0   CG  CGG
    1   10489   +   0   0   CG  CGC
    1   10490   -   0   0   CG  CGG
    1   10493   +   0   0   CG  CGC
    1   10494   -   0   0   CG  CGG
    
    # 第一列为chromosome
    # 第二列为location
    # 第三列为strand
    # 第四,五列为甲基化和非甲基化的碱基数目
    # 第六列为CG
    # 第七列为背景(第一个C延伸两个碱基)
    

    其它参数

    bam2nuc
    bismark2summary
    coverage2cytosine
    NOMe_filtering
    filter_non_conversion
    # 有需要的可以自信探索 --help or manual
    

    此处根据测序数据得到了甲基化位点的信息,但是后续DML以及DMR的确定还需要R包的使用,以及后续的可视化还以探索以下包:


    image.png

    Methy-Pipe: An Integrated Bioinformatics Pipeline for Whole Genome Bisulfite Sequencing Data Analysis
    2014年出的一个pipeline,分析作图一条龙,有兴趣的同学安排一下。

    相关文章

      网友评论

        本文标题:BS-Seq(3) -- 数据比对并提取甲基化位点

        本文链接:https://www.haomeiwen.com/subject/rdcildtx.html