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引物的更多相关文章

  1. trim()方法去除字符串首尾空格

    trim()方法去除字符串首尾空格 1.原生js                 Function trimStr(str){                         Return str.r ...

  2. mothur summary.seqs 统计fasta文件中每条序列的长度

    在介绍summary.seqs的用法之前,我们首先需要搞清楚两个概念: 1)ambiguous bases 中文叫做模糊碱基,对于DNA序列来说,只有ATCG 4种碱基,在IUPAC定义的碱基标准中, ...

  3. mothur reverse.seqs 将序列反向互补

    reverse.seqs 命令可以得到输入序列的反向互补序列 用法: mothur "#reverse.seqs(fasta = "input.fasta")" ...

  4. SQL TRIM()函数去除字符串头尾空格

    SQL TRIM()函数去除字符串头尾空格 SQL 中的 TRIM 函数是用来移除掉一个字串中的字头或字尾.最常见的用途是移除字首或字尾的空白.这个函数在不同的资料库中有不同的名称: MySQL: T ...

  5. JavaScript trim 实现去除字符串首尾指定字符的简单方法

    String.prototype.trim = function (char, type) { if (char) { if (type == 'left') { return this.replac ...

  6. 【转载】C#使用Trim方法去除字符串前后的所有空格

    在C#语言程序开发过程中,很多时候需要对字符串对象的前后空格进行去除,此时就需要使用到Trim()方法来实现这个功能,Trim()方法可以快速去除字符串前端和后端的所有空格. 例如有个字符:strin ...

  7. 用Oracle的TRIM函数去除字符串首尾指定字符

    去掉首尾空格 SELECT TRIM(' abc '), ltrim(' abc '), rtrim(' abc ') FROM dual; 去掉首尾的其他字符 SELECT /*TRIM(';a;b ...

  8. C# Trim方法去除字符串两端的指定字符

    var str= ",2,3,4,6,7,"; var str2 = str.Trim(new char[] { ',' }); //去除字符串str两端的','字符. //则st ...

  9. java中的“空格”用trim()无法去除?原来是这样!

    原因: 从txt文件中读取一些数据导入mysql数据库,导入数据库之后发现有一个字段的前面有两个“空格”,后来在代码里我尝试用trim().replace()等方法去除,发现怎么也去不掉,于是我将字符 ...

随机推荐

  1. 【神经网络】LSTM 网络

      Long Short Term 网络—— 一般就叫做 LSTM ——是一种 RNN 特殊的类型,可以学习长期依赖信息.LSTM 由Hochreiter & Schmidhuber (199 ...

  2. idea 改变version control

    idea 当一个moudule拥有2个VCS的时候 如何切换其应用的VSC 如拥有 SVN 和 GIT 2个版本  ,想换回SVN则删除  git目录 将 version control  vcs 设 ...

  3. 再论FreeRTOS中的configTOTAL_HEAP_SIZE

    关于任务栈和系统栈的基础知识,可以参考之前的随笔.(点击这里) 这里再次说明:#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 17 * 1024 ) ) 这个 ...

  4. [转] handsontable的核心方法

    原文地址:http://blog.csdn.net/mafan121/article/details/46122577 1.为handsontable添加钩子方法 addHook(key,callba ...

  5. 机器学习笔记,使用metrics.classification_report显示精确率,召回率,f1指数

    sklearn中的classification_report函数用于显示主要分类指标的文本报告.在报告中显示每个类的精确度,召回率,F1值等信息. 主要参数: y_true:1维数组,或标签指示器数组 ...

  6. Spring高级装配(二) 条件化的bean

    如果你希望一个bean在特定的条件下才会出现: 应用的类路径下包含特定的库时才创建 只有当某个特定的bean也声明之后才会创建 某个特定的环境变量设定之后才创建某个bean 在Spring 4之前,很 ...

  7. STM32f103的数电采集电路的双ADC的设计与使用

    STM32F103C8T6拥有3个ADC,其独立使用已经在本文的3.1.3里面有详细的介绍,这里主要是介绍双ADC的同时使用,即STM32的同步规则模式使用.在此模式在规则通道组上执行时,外部触发来自 ...

  8. sqoop 常用命令整理(一)

    这些内容是从sqoop的官网整理出来的,是1.4.3版本的Document,如果有错误,希望大家指正. 1.使用sqoop导入数据 sqoop import --connect jdbc:mysql: ...

  9. headfirst 07

    WEB 不论你在web上做什么, 都离不开请求和响应. web请求作为某个用户交互的结果由web浏览器发送到web服务器. 在web服务器上会生成web响应并发回到web浏览器.整个过程可以总结为5步 ...

  10. mysql深坑之--group_concat有长度限制!!!!默认1024

    在mysql中,有个函数叫“group_concat”,平常使用可能发现不了问题,在处理大数据的时候,会发现内容被截取了,其实MYSQL内部对这个是有设置的,默认不设置的长度是1024,如果我们需要更 ...