mothur trim.seqs 去除PCR引物
trim.seqs 有以下几个主要应用:
1)根据barcode 拆分序列;
2)去除PCR引物
3) 去除低质量序列
trim.seqs 在使用时必须输入一个fasta 格式的序列,然后在加至少一个的选项;其选项有很多,下面一一介绍:
1)oligos: 从字面意义看是寡聚核苷酸, 这里是指barcode 和 PCR 引物的序列,这个选项对应的是一个文件,文件内容如下:
forward CATGCTGCCTCCCGTAGGAGT
#reverse TCAGAGTTTGATCCTGGCTCAG
barcode AACCAACC ALP50M
barcode AACCAAGG AZAC1
barcode AACCATCG ALP2B
barcode AACCATGC ALP1B
barcode AACCGCAT ALP80M
barcode AACCGCTA ALPG2
barcode AACCGGAA AZ273
forward和reverse代表PCR引物,barcode 代表多个样本混测时区分样本的index序列
在这个文件中,不同字段是\t分隔,需要注意的是mothur 认为的forward引物一定出现在序列的起始,reverse引物出现在序列的末尾,在使用mothur去除pCR引物时,实际两个方向都需要考虑;mothur允许PCR引物中有兼并碱基,只要符合IUPAC规定的碱基都是可以的
用法:
mothur "#trim.seqs(fasta=test.fa,oligos=primer)"
会输出两个文件:
*trim.fasta: 这个文件是去除PCR引物之后的序列, 处理成功之后的序列如下:
>1 bdiffs=0(match) fpdiffs=0(match) rpdiffs=0(match)
AAAAAAAAAAAAAAAAAAAAAAAA
在序列标识符中,bdiffs 代表 barcode difference num , fpdiffs 和 rpdiffs 分别代表 forward primer difference num 和 reverse difference num
*scrap.fasta : 这个文件是处理失败的序列,失败的原因是没有找到PCR引物,序列如下:
>2|r bdiffs=0(match) fpdiffs=0(match) rpdiffs=1000(noMatch)
CGATCGATCGATCGACAAAAAAAAAAAAAAAAA
在序列标识符中,会给出失败的原因,比如这里的"2|r", 代表在这条序列中没有找到反向引物,可以看到 rpdiffs = 1000 (noMatch), 当没有找到时,错配数直接设置成1000
备注:在oligos 文件中,输入的引物都方向都是5’->3', mothur在查找引物的时候,会在序列的5’端查找正向引物,在序列的3’端查找反向引物的反向互补序列。
参考资料:
https://www.mothur.org/wiki/Trim.seqs
mothur trim.seqs 去除PCR引物的更多相关文章
- trim()方法去除字符串首尾空格
trim()方法去除字符串首尾空格 1.原生js Function trimStr(str){ Return str.r ...
- mothur summary.seqs 统计fasta文件中每条序列的长度
在介绍summary.seqs的用法之前,我们首先需要搞清楚两个概念: 1)ambiguous bases 中文叫做模糊碱基,对于DNA序列来说,只有ATCG 4种碱基,在IUPAC定义的碱基标准中, ...
- mothur reverse.seqs 将序列反向互补
reverse.seqs 命令可以得到输入序列的反向互补序列 用法: mothur "#reverse.seqs(fasta = "input.fasta")" ...
- SQL TRIM()函数去除字符串头尾空格
SQL TRIM()函数去除字符串头尾空格 SQL 中的 TRIM 函数是用来移除掉一个字串中的字头或字尾.最常见的用途是移除字首或字尾的空白.这个函数在不同的资料库中有不同的名称: MySQL: T ...
- JavaScript trim 实现去除字符串首尾指定字符的简单方法
String.prototype.trim = function (char, type) { if (char) { if (type == 'left') { return this.replac ...
- 【转载】C#使用Trim方法去除字符串前后的所有空格
在C#语言程序开发过程中,很多时候需要对字符串对象的前后空格进行去除,此时就需要使用到Trim()方法来实现这个功能,Trim()方法可以快速去除字符串前端和后端的所有空格. 例如有个字符:strin ...
- 用Oracle的TRIM函数去除字符串首尾指定字符
去掉首尾空格 SELECT TRIM(' abc '), ltrim(' abc '), rtrim(' abc ') FROM dual; 去掉首尾的其他字符 SELECT /*TRIM(';a;b ...
- C# Trim方法去除字符串两端的指定字符
var str= ",2,3,4,6,7,"; var str2 = str.Trim(new char[] { ',' }); //去除字符串str两端的','字符. //则st ...
- java中的“空格”用trim()无法去除?原来是这样!
原因: 从txt文件中读取一些数据导入mysql数据库,导入数据库之后发现有一个字段的前面有两个“空格”,后来在代码里我尝试用trim().replace()等方法去除,发现怎么也去不掉,于是我将字符 ...
随机推荐
- 【嵌入式】使用Cross Toolchain构建交叉工具链
Preface 前面编译linux内核的时候,用各种cross版本都不行啊,真是纠结,于是就想着自己也要会编译交叉工具的方法,然后各种尝试,各种问题啊,最后还是没解决(还有其它事情),步骤我都走熟了, ...
- OpenSUSE安装软件
zypper se xxxxx 是搜索软件包 zypper in xxxxx 跟你的apt-get install xxxx等价 zypper rm xxxx 删除 zypper up xxxx 更新 ...
- Python利用jieba获取中文词汇等
import jieba import os import jieba.analyse data = cleaned_comments # 数据来源于评论数据 seg = jieba.lcut(dat ...
- iOS开发:代码通用性以及其规范 第二篇(猜想iOS中实现TableView内部设计思路(附代码),以类似的思想实现一个通用的进度条)
在iOS开发中,经常是要用到UITableView的,我曾经思考过这样一个问题,为什么任何种类的model放到TableView和所需的cell里面,都可以正常显示?而我自己写的很多view却只是能放 ...
- 基于jQuery经典扫雷游戏源码
分享一款基于jQuery经典扫雷游戏源码.这是一款网页版扫雷小游戏特效代码下载.效果图如下: 在线预览 源码下载 实现的代码. html代码: <center> <h1>j ...
- Android基础——Fragment与Activity交互
今天继续讲解Fragment组件的特性,主要是跟Activity的交互和生命周期的关系,我们前面已经说过Fragment是依赖于Activity的,而且生命周期也跟Activity绑定一起.下面我们看 ...
- am335x ar8031 双网口配置记录
kernel version 4.4.12 ar8031 phy 驱动是: kernel_4.4.12/drivers/net/phy/at803.c kernel make menuconfig d ...
- Java并发编程:Lock和Synchronized <转>
在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问.本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方 ...
- Netty4.x中文教程系列(二) Hello World !<转>
在中国程序界.我们都是学着Hello World !慢慢成长起来的.逐渐从一无所知到熟悉精通的. 第二章就从Hello World 开始讲述Netty的中文教程. 首先创建一个Java项目.引入一个N ...
- 微信支付WxpayAPI_php_v3(三)支付成功回调
接收回调通知后的业务处理都在NotifyProcess做,$data包含了微信返回给你的数据. Service: <?php /** * Created by PhpStorm. * User: ...