转载:http://www.cnblogs.com/nkwy2012/p/6362996.html

SAM是Sequence Alignment/Map 的缩写。像bwa等软件序列比对结果都会输出这样的文件。samtools网站上有专门的文档介绍SAM文件。具体地址:http://samtools.sourceforge.net/SAM1.pdf

很多人困惑SAM文件中的第二列FLAG值是什么意思。根据文档介绍我们可以计算,但是为了方便大家,下面给大家提供一个脚本工具,大家直接输入flag值就可以知道它代表的含义了。

该脚本的使用方法如下截图所示:

脚本工具的使用方法:

将下面的代码保存在记事本里面,另存为一个html文件,如文件名:FlagExplain.html(拓展名一定要为.html)。双击既可以在浏览器里面打开了。

<html><head><meta http-equiv="Content-Type" content="text/html; charset=GBK">
<title>Explain SAM Flags</title>
<script type="text/javascript">
lstFlags = [["read paired", 0x1],
["read mapped in proper pair", 0x2],
["read unmapped", 0x4],
["mate unmapped", 0x8],
["read reverse strand", 0x10],
["mate reverse strand", 0x20],
["first in pair", 0x40],
["second in pair", 0x80],
["not primary alignment", 0x100],
["read fails platform/vendor quality checks", 0x200],
["read is PCR or optical duplicate", 0x400]];

function explainFlags() {
var flagValue = parseInt(document.getElementById('tb').value); //returns 0 or NaN if can't parse
var summary = "";
for(var i = 0; i < lstFlags.length; i++) {
var checkbox = document.getElementById('cb' + i)
if(lstFlags[i][1] & flagValue) {
summary += " &nbsp; &nbsp; " + lstFlags[i][0] + "<br>";
checkbox.checked = true;
} else {
checkbox.checked = false;
}
}

document.getElementById('summary').innerHTML = summary;
}

function checkboxClicked() {
//compute the new flag value
var newFlagValue = 0;
for(var i = 0; i < lstFlags.length; i++) {
var checkBox = document.getElementById('cb' + i);
if(checkBox.checked) {
newFlagValue |= lstFlags[i][1];
}
}
var textbox = document.getElementById('tb');
textbox.value = newFlagValue;
explainFlags();
}
</script>

<noscript>This page requires JavaScript. Please enable it in your browser settings.</noscript>
</head>
<body>

This utility explains SAM flags in plain English. <br>
<br>

<form οnsubmit="explainFlags(); return false;">
Flag: &nbsp;
<input id="tb" type="text" size="10"> &nbsp; &nbsp; &nbsp;
<input type="submit" value="Explain"><br>
<br>
Explanation:<br>
<script type="text/javascript">
for(var i = 0; i < lstFlags.length; i++) {
document.write("<input type=checkbox name=cb" + i + " id='cb" + i + "'οnclick='checkboxClicked();'> &nbsp; " +lstFlags[i][0] + "</input><br>");
}
</script><input type="checkbox" name="cb0" id="cb0"οnclick="checkboxClicked();"> &nbsp; read paired<br><input type="checkbox"name="cb1" id="cb1" οnclick="checkboxClicked();"> &nbsp; read mapped in proper pair<br><input type="checkbox" name="cb2" id="cb2"οnclick="checkboxClicked();"> &nbsp; read unmapped<br><input type="checkbox"name="cb3" id="cb3" οnclick="checkboxClicked();"> &nbsp; mate unmapped<br><input type="checkbox" name="cb4" id="cb4" οnclick="checkboxClicked();"> &nbsp; read reverse strand<br><input type="checkbox" name="cb5" id="cb5"οnclick="checkboxClicked();"> &nbsp; mate reverse strand<br><inputtype="checkbox" name="cb6" id="cb6" οnclick="checkboxClicked();"> &nbsp; first in pair<br><input type="checkbox" name="cb7" id="cb7"οnclick="checkboxClicked();"> &nbsp; second in pair<br><input type="checkbox"name="cb8" id="cb8" οnclick="checkboxClicked();"> &nbsp; not primary alignment<br><input type="checkbox" name="cb9" id="cb9"οnclick="checkboxClicked();"> &nbsp; read fails platform/vendor quality checks<br><input type="checkbox" name="cb10" id="cb10"οnclick="checkboxClicked();"> &nbsp; read is PCR or optical duplicate<br>
<br>
Summary:<br>
<div id="summary">
</div></form></body></html>

转载于:https://www.cnblogs.com/renping/p/7435723.html

31、SAM文件中flag含义解释工具--转载相关推荐

  1. 推荐一个SAM文件中flag含义解释工具--转载

    SAM是Sequence Alignment/Map 的缩写.像bwa等软件序列比对结果都会输出这样的文件.samtools网站上有专门的文档介绍SAM文件.具体地址:http://samtools. ...

  2. html文件下的flag,推荐一个SAM文件中flag含义解释工具

    SAM是Sequence Alignment/Map 的缩写.像bwa等软件序列比对结果都会输出这样的文件.samtools网站上有专门的文档介绍SAM文件.具体地址:http://samtools. ...

  3. 从word、wps、excel、pdf和txt文件中查找文本的工具

    从word.wps.excel.pdf和txt文件中查找文本的工具. 因工作中要经常从大量word文档中查找固定的文本,所以自己就做了本工具. 可以批量从doc.docx.wps.xls.xlsx.p ...

  4. idea在java文件中查找_Java开发工具IntelliJ IDEA使用源代码系列教程(四):在文件中搜索目标...

    IntelliJ IDEA是Java语言开发的集成环境,IntelliJ在业界被公认为优秀的Java开发工具之一,尤其在智能代码助手.代码自动提示.重构.J2EE支持.Ant.JUnit.CVS整合. ...

  5. IAR MSP430头文件中的一些解释

    今天在阅读RF_Example_Code_v1.0中头文件cc430x613x.h时发现了几部分的疑问. 首先来看一下cc430x613x.h 中的3个#define的例子: #define DEFC ...

  6. sunplus8202v BIN文件中LOGO的替换工具设计思路

    原创文章,如有转载,请注明出处:http://blog.csdn.net/desert2009sz/article/details/6871758 由于前段时间在做单游戏手柄的无线转换方案,所以收集了 ...

  7. CTF音频文件得到flag 使用工具MP3Stego

    萌新 第一次得到flag 写一下自己的思路吧 看到音频文件,于是百度怎么解决mp3文件得到flag 于是找到工具MP3Stego,下载放到E盘  进入电脑的cmd,需要换盘到你存储的盘, 操作如下 1 ...

  8. DWG文件中怎么插入jpg

    DWG文件中怎么插入JPG,我们在进行DWG文件阅读的时候有的时候会需要在DWG文件中插入JPG,这个问题可是难倒了很多人,其实在DWG文件中插入JPG不是一件难的事情,只要我们用对软件就可以在DWG ...

  9. QT的项目组织结构和pro文件中的各关键字的含义解释

    一.QT项目的组织逻辑 作为C++开发的平台之一,QT具有的诸多特点,这里就不一一赘述.我们着重谈谈QT项目的组织逻辑.用QtCreator创建了一个C++项目后,在项目区视图中,顶级为项目名称,包含 ...

最新文章

  1. Specification排序orderby
  2. 记一次修复被篡改的IE首页
  3. libevent 实现的socket 通信 server以及解决找不到动态库的方法
  4. 《Redis设计与实现》之第十一章:AOF持久化
  5. 原文翻译:关于机器学习,我们忽视的东西
  6. 《构建之法》 读书笔记(4)
  7. 厉害了!浙大研发出踹不倒四足机器人“绝影”,中国版波士顿动力来了
  8. jQuery 鼠标拖拽移动窗口
  9. 智能门锁电路图_科技生活|网传“小黑盒”刷开智能锁,人脸识别系统“翻脸不认人”?...
  10. qq操作技巧 - 网上收集
  11. Scratch编程与数学之求累加和!
  12. 如何写好一个2Take1 Lua - 搭建Lua环境
  13. ode45matlab例子,ode45(ode45用法举例)
  14. mybatis拦截器添加额外参数
  15. 2021-05-07:set,hashmap,collisions, map 242 1 15 18
  16. USB-WIFI RTL8188CU模块驱动
  17. 卷毛机器人抢大龙_英雄联盟:大龙被哪个英雄抢最生气?机器人还好,他拿龙还可5杀...
  18. 博弈论学习之巴什博弈,尼姆博弈, sg博弈
  19. DataFrame获取列名
  20. synonymous oracle,oracle dblink

热门文章

  1. 有些道理经历过就是道理,没经历过可能就是心灵鸡汤。
  2. 深度学习之自编码器(1)自编码器原理
  3. arggis怎么修改上下标_京东自营是怎么操作的?有什么要求?
  4. 疯子的算法总结12--倍增
  5. ACM成长之路(干货) 我爱ACM,与君共勉
  6. linux系统下的“静态库和动态库”专题之二:库的创建和使用
  7. T1串口波特率的计算方法
  8. 【Clion-Ubuntu-dlib】运行一个dlib案例(一)(如何在clion编译器中配置CMakeLists)
  9. 机器学习实战(二)——k-近邻算法
  10. sublime同步配置和插件