外显子分析:cutadapt,去除序列adapter详细解析
外显子测序时带有adapt接头,因此我们需要去除adapt接头,cutadapt的作用是去除adapt接头,一般用到如下命令:
cutadapt -a AACCGGTT -o output.fastq input.fastq
“-a”参数表明后面跟着的“AACCGGTT”是我们想要去除的adapt接头,如果你的外显子接头为其他序列,请将“AACCGGTT”改为你想去除的adapt接头;
“-o”参数后面跟着的是输出文件“output.fastq”;
“input.fastq”指的是输入文件;
输入文件必须是以下三种格式文件:
- FASTA (文件名后缀:
.fasta,.fa,.fna) - FASTQ (后缀:
.fastq,.fq) - 以上任何一种, 但压缩为
.gz(甚至.bz2和.xz都是允许的).
如果输入文件以.gz 为后缀的话,则去除adapt的命令为:
cutadapt -a AACCGGTT -o output.fastq.gz input.fastq.gz
如果通过“-o”没有输出指定文件,也可以用以下命令输出文件:
cutadapt -a AACCGGTT input.fastq > output.fastq
下图是用不同参数去除不同的adapt,左列是对adapt的描述,右列是我们去除该行对应的adapt时选择的参数:

图来源(https://cutadapt.readthedocs.io/en/stable/guide.html)
下图是去除不同adapt时,剪切掉的序列范围模式图:

图来源(https://cutadapt.readthedocs.io/en/stable/guide.html)
对于不同的adapter和命令,去除效果如下:
"-a ADAPTER"去除ADAPTER后面所有的序列,即使是不完整的ADAPTER也可以去除,如ADAP

"-g ADAPTER"去除ADAPTER之前所有的序列,包括ADAPTER自己,即使是不完整的ADAPTER也可以,如DAPTER、TER

“-a ADAPTER$”在adapter上加$只能去除有完整的ADAPTER,且该ADAPTER在3’末端,后面不加任何其他序列,如下图第三列用该参数时不能被去除。

“-a FIRST...SECOND”该参数能去除首末端分别有FIRST和SECOND的adapter,即使是不完整的SECOND adapter也是允许的,如第二列。然而,当序列没有FIRST首端adapter序列时,则无法去除。

Ps:如果一条序列含有多个相同的adapter,则系统默认处理最左边的adapter,如“cccccADAPTERgggggADAPTERttttt”,当搜寻3‘ adapter时,序列修剪成“ccccc”,当搜寻5’ adapter时,序列修剪成“gggggADAPTERttttt”。
外显子分析:cutadapt,去除序列adapter详细解析的更多相关文章
- 单表扫描,MySQL索引选择不正确 并 详细解析OPTIMIZER_TRACE格式
单表扫描,MySQL索引选择不正确 并 详细解析OPTIMIZER_TRACE格式 一 表结构如下: 万行 CREATE TABLE t_audit_operate_log ( Fid b ...
- java类生命周期详细解析
(一)详解java类的生命周期 引言 最近有位细心的朋友在阅读笔者的文章时,对java类的生命周期问题有一些疑惑,笔者打开百度搜了一下相关的问题,看到网上的资料很少有把这个问题讲明白的,主要是因为目前 ...
- 对MySQL DELETE语法的详细解析
以下的文章主要描述的是MySQL DELETE语法的详细解析,首先我们是从单表语法与多表语法的示例开始的,假如你对MySQL DELETE语法的相关内容十分感兴趣的话,你就可以浏览以下的文章对其有个更 ...
- 转:二十一、详细解析Java中抽象类和接口的区别
转:二十一.详细解析Java中抽象类和接口的区别 http://blog.csdn.net/liujun13579/article/details/7737670 在Java语言中, abstract ...
- 在PHP中使用CURL,“撩”服务器只需几行——php curl详细解析和常见大坑
在PHP中使用CURL,"撩"服务器只需几行--php curl详细解析和常见大坑 七夕啦,作为开发,妹子没得撩就"撩"下服务器吧,妹子有得撩的同学那就左拥妹子 ...
- 详细解析BluetoothAdapter的详细api
(1)开关状态值 (2)扫描状态值 (3)蓝牙操作接收的广播 (4)蓝牙操作请求的广播 (5)附加域 (6)错误码 (1)获取蓝牙适配器 (2)获取state状态方法 (3)蓝牙是否可用 (4)打开蓝 ...
- 详细解析 HTTP 与 HTTPS 的区别
详细解析 HTTP 与 HTTPS 的区别 超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览 ...
- 我的Android进阶之旅------>关于android:layout_weight属性的详细解析
关于androidlayout_weight属性的详细解析 效果一 效果二 图3的布局代码 图4的布局代码 效果三 图7代码 图8代码 效果四 效果五 版权声明:本文为[欧阳鹏]原创文章,欢迎转载,转 ...
- PHP中使用CURL之php curl详细解析和常见大坑
这篇文章主要介绍了PHP中使用CURL之php curl详细解析和常见大坑 ,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 七夕啦,作为开发,妹子没得撩就“撩”下服务器吧,妹子有得撩的同学 ...
随机推荐
- 如何写类库方法、属性等的注释,才能在其他地方调用dll文件时,在代码里出现智能提示?
我的本意是想整理下以往写过的代码库,给自己的代码增加复用性.一段时间后,可能自己对写过的代码是什么含义会忘掉,或者别人看自己的代码, 增加可懂性的考虑,决定要添加注释.(好像语句不通:)可是发现,在其 ...
- Js浏览器对象
Js浏览器对象——window对象 1.window对象: (1)window对象是BOM的核心,window对象指当前的浏览器窗口. (2)所有的JavaScript全局对象.函数以及变量均自动成为 ...
- vector预分配空间溢出
vector 当一个vector预分配的存储空间用完之后,为维护其连续的对象数组,它必须在另外一个地方重新分配大块新的(更大的)存储空间,并把以前已有的对象拷贝到新的存储空间中去. // A clas ...
- VS番茄助手安装(vs2015+vs2010):卸载之前的vs助手再安装新版本
1 卸载之前的vs助手 vs2010: vs2015: 2 安装新版本
- [lua]尝试一种Case语法糖
function CaseT(arg) function proxy(caller) caller.yield(r) end -- proxy return function (cond) if (c ...
- (C语言)char类型与int类型相加
#include <stdio.h> int main(void) { ; ; int c = a + b; a += b; printf("c=%d",c); //p ...
- C语言学习总结(三) 复杂类型
第五章.复杂数据类型 (数组.字符串.指针.结构体.枚举.共同体) 1.什么是数组? 概念:把具有相同类型的若干变量按有序的形式组织起来,这些按序排列的同类数据元素的集合称为数组: 按数组元素的类型不 ...
- ruby 中文支持设置
学习Ruby的过程中,对于于涉及中文的的代码的时候,需要添加如下代码在首行 # encoding: utf-8 或者EMAC写法 # -*- coding : utf-8 -*- 因为Ruby编译器会 ...
- sql如果存在就修改不存在就新增
FROM 表名 WHERE 条件) UPDATE 表名 SET 字段=值 WHERE 条件 ELSE INSERT INTO 表名(字段) VALUES(值) 真实使用举例: from [UserRu ...
- 同步的HTTP请求
代码: #import <Foundation/Foundation.h> void request(NSString *urlString) { NSLog(@"BEGIN&q ...