生信分析常用脚本(二)--SOAPdenovo

1.SOAPDenovo配置文件示例

软件下载安装和使用:http://soap.genomics.org.cn/soapdenovo.html

asm.cfg

#maximal read lengthmax_rd_len=100

[LIB]
avg_ins=450

#if sequence needs to be reversed
reverse_seq=0

#in which part(s) the reads are used
asm_flags=3

#use only first 100 bps of each read
rd_len_cutoff=100

#in which order the reads are used while scaffoldingrank=1

# cutoff of pair number for a reliable connection (at least 3 for short insert size)
pair_num_cutoff=3
#minimum aligned length to contigs for a reliable read location (at least 32 for short insert size)map_len=32#a pair of fastq file, read 1 file should always be followed by read 2 file
q1=../../data/newBGIseq500_1.fq.gz
q2=../../data/newBGIseq500_2.fq.gz

运行脚本:

run.sh

/home/stu2/Software/Assemblathon1_pipeline/SOAPdenovo-63mer_v2.0 all -s  asm.cfg -K 35 -p 16 -R -o asm 1>cout.log 2>cerr.log
./SOAPdenovo-63mer_v2.0 pregraph -K 63 -s asm.cfg -o asm -p 40 1>pregraph.log 2>pregraph.err
./SOAPdenovo-63mer_v2.0 contig -s asm.cfg -g asm -M 2 -e 1 -p 40 -R -D 2  1>contig.log 2>contig.err
./SOAPdenovo-63mer_v2.0 map -s asm.cfg -g asm -k 31 -p 40 1>map.log 2>map.err
./SOAPdenovo-63mer_v2.0 scaff -g asm -p 40  -F 1>scaff.log 2>scaff.err

02. VCFtools的使用

软件下载和使用:

https://vcftools.github.io/documentation.html

https://vcftools.github.io/man_latest.html

# get Qual
./vcftools --gzvcf chr17.vcf.gz --site-quality --out Qual
# get interval
./vcftools --gzvcf chr17.vcf.gz --chr chr17 --from-bp 7661779 --to-bp 7687550 --remove-indels --out TP53 --recode

03.变异位点信息统计

#!/usr/bin/perl
use strict;

my $file = shift;

open(In,"gzip -dc $file|") or die ("can‘t open the file!\n");

my @type;
my @array = ( );
while(<In>){
   chomp;
   next if (/^##/);
   if (/^#/){
     my @line = split;
     push @type, $line[9];
     push @type, $line[10];
     push @type, $line[11];
     next;
   }
   my @line = split;
   if ($line[1] >=7668402 && $line[1] <=7687550 && $line[2] ne "."){
       my @type1 = split(/\/|:/, $line[9]);
       my @type2 = split(/\/|:/, $line[10]);
       my @type3 = split(/\/|:/, $line[11]);
       #print "$type1[0]\t$type1[1]\n";
       if ($type1[0]==$type1[1]){
          $array[0][0] ++;
       }else{
          $array[0][1] ++;
       }
       if ($type2[0] == $type2[1]){
           $array[1][0] ++;
       }else{
           $array[1][1] ++;
       }
       if($type3[0] == $type3[1]){
           $array[2][0] ++;
       }else{
           $array[2][1] ++;
        }
   }
}
close IN;

print "Sample\tHomozygous\tHeterozygote\n";
print "$type[0]: $array[0][0]\t$array[0][1]\n";
print "$type[1]: $array[1][0]\t$array[1][1]\n";
print "$type[2]: $array[2][0]\t$array[2][1]\n";

友情参考链接:http://20xue.com/3997.htmlhttps://www.cnblogs.com/azrael-cc/

原文地址:https://www.cnblogs.com/ctfighting/p/9898661.html

时间: 2025-01-07 10:34:36

生信分析常用脚本(二)--SOAPdenovo的相关文章

生信分析常用脚本(一)

1.计算reads PE长度脚本 01.Cal_PE_Depth.sh Read_count=`gzip -dc Reads1.fq.gz |wc -l |awk '{print $1/4}'` echo "read pair count : $Read_count" average_depth=`expr $Read_count \* 200 / 6000000 ` echo average depth: $average_depth 2.计算reads覆盖度 02.coverage

生信分析常用class

1.AnnotationDb-objects 是R中所有注释包的最基础的class,可用于各种数据库中ID转换,常用的三个函数select, columns和keys,saveDb(保存AnnotationDb object),loadDb,species(shows the genus and species label currently attached to the AnnotationDb objects database.) ref_web:http://lutgw1.lunet.e

IOS逆向分析——GL脚本的提取

总结:要逆一个程序必须清楚地知道程序的结构和常用的API函数,不清楚一个程序而去逆出结果是不可能滴 首先是glsl脚本运行的全过程,第一步是为shader的运行创建一个容器GLuint glCreateProgram(void),第二步是把编译好的shader附加到程序void glAttachShader(GLuint program, GLuint shader),编译好的shader可以是多个所以第二步可以重复多步把每一个编译好的一一附加到程序,顶点shader和像素shader一一成对,

【Unity】常用脚本类的继承关系(入门篇)

前言 学习Unity开发引擎的初学者会接触大量的脚本类,而这些类之间的关系往往容易被忽略. 本文对Unity引擎开发中的一些常用类及其关系进行了简单的归纳总结. 博文首发地址:http://blog.csdn.net/duzixi Unity常用脚本类继承关系图 对Unity开发稍有了解的朋友都知道,在Unity开发框架中有4个基本层次:工程(应用程序).场景.游戏对象和组件. 在脚本中,整个应用程序和场景由Application类控制:而游戏对象和组件类均继承于Object类. 在Object

linux程序分析工具介绍(二)—-ldd,nm

本文要介绍的ldd和nm是linux下,两个用来分析程序很实用的工具.ldd是用来分析程序运行时需要依赖的动态库的工具:nm是用来查看指定程序中的符号表相关内容的工具.下面通过例子,分别来介绍一下这两个工具: 1. ldd, 先看下面的例子, 用ldd查看cs程序所依赖的动态库: [email protected]:~/Public$ ldd cs linux-gate.so.1 => (0xffffe000) libz.so.1 => /lib/libz.so.1 (0xb7f8c000)

日志分析常用指令简单介绍

大型分布式网站架构设计与实践的第四章的简单回顾 日志分析常用的指令: 查看文件的内容:cat,(适合日志文件比较大)cat –n install.log (-n表示显示行号) 分页显示文件:more,(cat缺少交互,只能用来查看,more可以更好的用来分页显示文件,Enter显示下一行,空格键显示下一页,按F键显示下一屏,B返回上一屏内容)  less是more更强大的交互工具 显示文件尾:tail,    tail  -n install.log (-n表示显示最后的行数) (-f 表示ta

《生物信息学》——李霞;;生信概念

挑战:寻找新的处理海量数据和复杂性的方法. 生信:说了什么: 研究对象:       以核酸.蛋白质等生物大分子数据库 研究手段方法:数学.信息学.计算机科学 研究工具:       计算机硬件.软件.计算机网络 研究目的:       对浩如烟海的原始数据进行获取.加工.存储.分配.分析.管理.注释解释,使之成为具有明确生物意义的生物信息. 并通过生物信息的查询.搜索.比较.分析,从中获取基因编码.基因调控.核酸和pro结构功能及其相互关系等理性知识. 在大量信息和知识的基础上探索生命起源.生

Linux、hive、sqoop常用脚本

一.Linux常用脚本 1.查看进程 ps -ef|grep -i tom 2.SCP从远程复制到本地目录 scp [email protected]/172.19.2.75:/home/root/full.tar.gz /home/daisy/full.tar.gz 3.查看目录 pwd 4.查看hadoop集群状态命令 hadoop dfsadmin -report 5.查看default getway命令 route 或者 netstat -r 6.添加default getway命令 r

shell脚本常用脚本:if判断

shell脚本常用脚本:if判断 str1 = str2 当两个串有相同内容.长度时为真 str1 != str2 当串str1和str2不等时为真 -n str1 当串的长度大于0时为真(串非空) -z str1 当串的长度为0时为真(空串) str1    当串str1为非空时为真 [ "2006.01.23" \> "2005.03.01" ] && echo dayu || echo budayu int1 -eq int2 两数相等为