1.sam,bam的格式转换:

$samtools view -sb file.sam >file.bam
$samtools view -sb file.sam -o file.bam
#sam文件转换为bam,-s 输入文件为sam -b 输出文件为bam $samtools view file.bam>file.sam
$samtools view -h file.bam -o file.sam
#bam文件转换为sam文件

2.对bam文件进行排序

$samtools sort -n -o file.sort file.bam
#以reads的名字排序,输入file.bam 输出file.sort

3.对bam文件进行简单的统计

$samtools flagstat file.bam
#得到比对的统计结果,包括比对率等等。。

 

4.筛选特定的区域

#筛选不需要的flag值
$samtools view –F 4 file.bam –o file.filter.sam #限定比对质量值最小值
$samtools view –q 20 file.bam –o file.quality.sam #得到指定位置的sam文件
$samtools view file.sort.bam Chr1:1-5000 –o file.position.sam

5.对多个read重复mapping 到基因组上同一个区域时,只保留匹配度最高的

$samtools  rmdup  file.bam  file.rmdup.bam

  

6.合并某个样本的多个重复实验的bam文件

前提:bam文件已排序

#! /bin/bash
#合并test_L1.bam和test_L2.bam文件
samtools merge -h test.sam \
test_L1_L2.bam \
test_L1.sorted.bam \
test_L2.sroted.bam
#合并test_L1.bam和test_L2.bam文件中的指定区域chr7
samtools merge -h test.sam \
-R chr7
test_L1_L2.bam \
test_L1.sorted.bam \
test_L2.sroted.bam

  

samtools的基本用法的更多相关文章

  1. 区别samtools faid产生的.fai文件功能和bwa index 产生的四个文件的功能

    samtools faidx 能够对fasta 序列建立一个后缀为.fai 的文件,根据这个.fai 文件和原始的fastsa文件, 能够快速的提取任意区域的序列 用法: samtools faidx ...

  2. samtools 使用简述

    功能如下: 1.View 主要功能讲sam文件转位bam文件. 涉及的参数: -b 输出bam格式..默认是sam文件 -h 输出的sam文件带header..默认不带 -H 仅仅输出header - ...

  3. StringTie用法详解

    StringTie 参考链接: https://ccb.jhu.edu/software/stringtie/index.shtml?t=manual#input https://www.cnblog ...

  4. samtools

    samtools 用法 samtools <command> [options] command 见以下列表, 每个 command 的 options 也不同 dict faidx in ...

  5. samtools软件的使用

    1)samtools简介--------------------------------------------------------------------------背景:前面我们讲过sam/b ...

  6. samtools faidx 命令处理fasta序列

    samtools faidx 能够对fasta 序列建立一个后缀为.fai 的文件,根据这个.fai 文件和原始的fastsa文件, 能够快速的提取任意区域的序列 用法: samtools faidx ...

  7. EditText 基本用法

    title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...

  8. jquery插件的用法之cookie 插件

    一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...

  9. Java中的Socket的用法

                                   Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...

随机推荐

  1. Oracle 查询并修改

    update test1 a set a.name=(select b.name from test2 b where a.id=b.id) where a.id in (select id from ...

  2. bat遍历当前目录下的文件,批量重命名

    @echo off setlocal enabledelayedexpansion for %%x in (*) do ( if not "%%x"=="demo.bat ...

  3. 【JavaEE】Springmvc+Spring+Hibernate整合及example

    前面两篇文章,分别介绍了Springmvc和Spring的搭建方法,本文再搭建hibernate,并建立SSH最基本的代码结构. Hibernate和前面两个比就比较复杂了,Hibernate是一个o ...

  4. c++ 判断windows系统和进程是32位还是64位

    BOOL Is64BitOS() { typedef VOID (WINAPI *LPFN_GetNativeSystemInfo)( __out LPSYSTEM_INFO lpSystemInfo ...

  5. 使用神器MobaXterm连接远程mysql和redis

    https://mobaxterm.mobatek.net/download-home-edition.html mysql redis 连接测试 mysql 127.0.0.1 3307 密码使用线 ...

  6. o.a.catalina.core.AprLifecycleListener : An incompatible version [1.2.7] of the APR based Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]

    1.错误信息提示: 2019-04-16 22:02:05.811 ERROR 18112 --- [           main] o.a.catalina.core.AprLifecycleLi ...

  7. Win MYSQL5.7.19压缩版安装

    最近需要在wins上安装MYSQL,发现最新的版本和之前的有点差距,再次记录一下 1.下载:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5. ...

  8. git更新代码出现错误

    git  pull代码时,出现如下的错误: SSL certificate problem: unable to get local issuer certificate 主要的原因是:没有ssl证书 ...

  9. python学习【第十一篇】网络编程

    一.socket的简介 socket(简称:套接字)进程间通信的一种方式,它与其他进程间通信的一个主要不同是:能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 Socket 来完成通 ...

  10. 微信小程序网络请求的setDate

    我感觉这个无比的奇葩..... 因为之前react的时候,我习惯在请求成功的时候直接this.setDate.........但是,在微信小程序中,一定要将this换成一个变量...一定要!!!否则会 ...