zoukankan      html  css  js  c++  java
  • 基因组组装软件SOAPdenovo的使用方法

    软件下载地址:可下载地址:https://github.com/aquaskyline/SOAPdenovo2

    soapdenovo组装可以一步跑完,也可分四步跑完,但是一般还是选择比较简单的一步:

    一步跑完的脚本:
    ./SOAPdenovo all -s config_file -K 25 -R -D 1 -d  -o graph_prefix
    四步单独跑的脚本:
    ./SOAPdenovo pregraph -s config_file  -K 25 -R -d 1 -p -o graph_prefix
    ./SOAPdenovo contig   -g graph_prefix -R -D 1 -M 1
    ./SOAPdenovo map      -s config_file  -g graph_prefix -p  -f
    ./SOAPdenovo scaff    -g graph_prefix -F -u -G -p
     
    用一步跑完的话第一个参数跟all就行,分开跑的话就依次跟pregraph、contig、map 、scaff就行。
     
    参数说明:

    all:

         -s  <string>      solexa reads 的配置文件

         -p  <int>         程序运行时设定的cpu线程数,默认值[8]

    pregraph: 

        -o  <string>      图形输出的文件名前缀 
        -K  <int>         输入的K-mer值大小,默认值[23],取值范围 13-127 #K-mer值必须是奇数;组装杂合子基因组的K-mer值应该小一点;组装含有高repeats基因组且要求其有高的测序深度和长的reads,的K-mer应该大一点。
        -a  <int>         假设初始化内存, 为了避免进一步的再分配,默认[0]G
        -d  <int>         去除kmers频数不大于该值(kmerFreqCutoff)的k-mer,默认值[0] ##最小化错误测序带来的影响
        -R  (optional)    利用read鉴别短的重复序列,默认值[NO]
     
     
    contigs:
          -g  <string>      输入graph file文件名前缀 
          -R  (optional)    移除repeats,使用pregraph步骤中产生的结果,如果参数-R在pregraph步骤中被设置的话,默认[NO]
          -D  <int>         去除频数不大于该值(edgeCovCutoff)的由k-mer连接的边,默认值[1],即该边上每个点的频数都小于等于1时才去除。edges with coverage no larger than EdgeCovCutoff will be deleted, [1] #最小化错误测序带来的影响
          -M  <int>         在contiging操作时,合并相似序列的强度,默认值为[1],最小值0,最大值3。#deal with heterozygosis
          -e  <int>         两边缘之间的弧的权重大于该值(arcWeight),将被线性化,默认值[0]
          -m  <int>         最大的kmer size(max 127)用于multi-kmer,默认[NO]
          -E  (optional)    在iterate迭代之前,合并clean bubble功能,仅在当使用multi-kmer时且设置-M参数,默认[NO]
     
     
    map:
          -g  <string>      输入graph file文件名前缀 
          -k  <int>         该值(kmer_R2C)是kmer size用于mapping reads到contigs上时的值,默认值[K]
          -f  (optional)    在map那一步中,对于使用SRkgf去填充gap,输出与gap相关的reads,默认[NO]
     
     
    scaffold:
          -F  (optional)    利用read对scaffold中的gap进行填补,默认[NO]
          -u  (optional)    构建scaffolding前不屏蔽高/低覆盖度的contigs,这里高频率覆盖度指平均contig覆盖深度的2倍。默认[mask]屏蔽
          -w  (optional)    在scaffold中,保持contigs弱连接于其他contigs,默认[NO]
          -G  <int>         估计gap的大小和实际补gap的大小的差异值,默认值[50]bp。
          -L  <int>         用于构建scaffold的contig的最短长度(minContigLen),默认为:[Kmer参数值+2]
          -c  <float>       在scaffolding之前,contigs小于100bp,且覆盖率小于该最小contig覆盖率(c*avgCvg),将被屏蔽,除非参数-u已设定,默认值[0.1]
          -C  <float>       在scaffolding之前,contigs覆盖率大于该最大contigs覆盖率(C*avgCvg),或者contigs小于100bp且覆盖率大于0.8*(C*avgCvg),将被屏蔽,除非参数-u已设定,默认值[2]
          -b  <float>       当处理contigs间的pair-end连接时,如果参数-b>1,该插入片段的上限值(b*avg_ins)将被用来作为大的插入片段(>1000)的上限,默认值[1.5]
          -B  <float>       如果两个contigs的覆盖率都小于bubble覆盖率(bubbleCoverage)乘以contigs平均覆盖率(bubbleCoverage*avgCvg),则去除在bubble结构中的低覆盖率contig,默认值[0.6]
          -N  <int>         统计基因组大小,默认值[0]
          -V  (optional)    输出相关信息为了可视化组装,默认[NO]
     
    关于配置文件config_file的写法:

    max_rd_len=50       #read的最大长度,该值一般设置的比实际read读长稍微短一些,截去测序最后的部分,具体长度看测序质量

    [LIB]                        #文库信息以此开头 #在其后,可以整多个文库,仍以[LIB]开头

    avg_ins=300          #文库平均插入长度,一般取插入片段分布图中给出的文库大小,illumina测序数据平均插入片段长度为300bp

    reverse_seq=0       #序列是否需要被反转,目前的测序技术,插入片段大于等于2k的采用了环化,所以对于插入长度大于等于2k文库,序列需要反转,reverse_seq=1,小片段设为0

    asm_flags=3           #该文库中的read序列在组装的哪些过程(contig/scaff/fill)中用到:              

                                   设为1:只用于构建contig;                        #454  or sanger or merging reads
                                   设为2:只用于构建scaffold;                     #长插入片段>=2k  , mate-pair libraries
                                   设为3:同时用于构建contig和scaffold;    #短插入片段<2k 
                                   设为4:只用于补洞gap filling                     #454  single 长 reads
     
    rank=1                    #rank该值取整数,决定了reads用于构建scaffold的次序,值越低,数据越优先用于构建scaffold。设置了同样rank的文库数据会同时用于组装 scaffold。一般将短插入片段设为1;2k设为2;5k设为                                    3;10k设为4;当某个档的数据量较大时,也可以将其分为多个档,同样,当某档数据量不足够时,可以将多个档的数据合在一起构建scaffold。这里说的数据量够与不够是从该档的测序覆盖度和物                                  理覆盖度两个方面来考虑的。
     
    pair_num_cutoff=3     #可选参数,pair_num_cutoff该参数规定了连接两个contig或者是pre-scaffold 的可信连接的阈值,即,当连接数大于该值,连接才算有效。     短插入片段(<2k)默认值[3],长插入长度序列默认值[5]。
     
    map_len=32            #可选参数,map_len该参数规定了在map过程中 reads和contig的比对长度必须达到该值(比对不容mismacth和gap),该比对才能作为一个可信的比对。     短插入片段(<2k)一般设置为32,长插                                  入片段设置为35,默认值[K+2]。
     
    q1=./pathfastq_read_1.fq
    #read 1的fastq格式的序列文件
    q2=./pathfastq_read_2.fq
    #read 2的fastq格式的序列文件(与read1对应的read2文件紧接在read1之后)
     
    f1=./pathfasta_read_1.fa
    #read 1的fasta格式的序列文件
    f2=./pathfasta_read_2.fa
    #read 2的fasta格式的序列文件
     
    q=./pathfastq_read_single.fq
    #单向测序得到的fastq格式的序列文件
     
    f=./pathfasta_read_single.fa
    #单向测序得到的fasta格式的序列文件
     
    p=./pathpairs_in_one_file.fa
    #双向测序得到的一个fasta格式的序列文件
     
    组装的结果文件解释:

    *.contig                #没有使用mate pair 信息的contig sequences 。

    *.scafSeq              #SOAPdenovo软件最终的组装序列结果,可用于后续研究。

    *.scafStatistics       #contigs和scaffolds的最终统计信息。

    组装过程中产生的其他文件,详见官网(http://soap.genomics.org.cn/soapdenovo.html#intro2):

    *.kmerFreq             #每行显示一个数,这个数是kmer值出现的频率等于行号的kmer个数。

    参考:https://www.cnblogs.com/Formulate0303/p/6879841.html

     
     
  • 相关阅读:
    只有标题1没有标题2、3的解决方法
    python函数学习总结
    python基础知识学习总结
    StructuredStreaming中,如果trigger触发时前一批数据还没处理完怎么办?
    StructuredStreaming解析JSON CVS
    StructuredStreaming整合kafka
    kafka--如何选择Kafka的分区数和消费者个数
    kafka中groupid作用
    查看kafka版本
    spark项目java与scala相互调用打包
  • 原文地址:https://www.cnblogs.com/liyichen/p/8349749.html
Copyright © 2011-2022 走看看