Archives

OTU表子集操作:otutable_subset 和 otutable_subsamples

otutable_subsetotutable_subsamples 程序设计的目的是解决获取OTU表子集的操作方式, 比如:

1. 提取给定OTU,并按照指定顺序生成新的OTU;
2. 提取特定样本,并按照特定顺序生成新的OTU;

otutable_subset

Usearchotutab_otu_subset 可以完成类似的事情, 但是不能很好解决一些问题, 比如不支持带有注释的OTU表,支持streaming 模式。

命令行接口:

$ otutable_subset
Usage: otutab_subset [options] <otu-table>
Options:
  -r  reorder the OTUs by OTUs in list
  -v  print version number

默认按照 OTU表中出现的顺序输出, 如指定 -r 可选项可以按照输入文件顺序。

实例:

文件 otu_ids.txt 为我们需要提取的OTU列表:

OTU_2
OTU_1
OTU_3

命令

otutable_subset -r  otutable_counts_ann.txt   otu_ids.txt
otutable_subset -r  otutable_counts.txt   otu_ids.txt

使用场景:比如我们对注释的结果去除线粒体或者叶绿体来源的序列,需要重新生成OTU表。

otutab_otu_subset 命令行模式:

usearch -otutab_otu_subset otutable_counts.txt -labels otu_ids.txt -output subset.txt

测试场景中对OTU表要求比较高,比如OTU的编号顺序以及是否带注释等。

otutable_subsamples

Usearchotutab_otu_subset 可以完成类似的事情, 但是不能很好解决一些问题, 比如排序问题。

命令行接口:

$ otutable_subsamples
Usage: otutable_subsamples <otu-table>  <samples| F1,F2,F3,F4>
version: 0.0.1

Usearch 同样有类似命令 otutab_sample_subset

实例:
文件 sample_ids.txt 为我们需要提取的OTU列表;

Con1d-2
Con1d-1
Con1d-3

我们只关注着三个样本的信息, 我们可以这样操作:

otutable_subsamples  otutable_counts_ann.txt  sample_ids.txt
otutable_subsamples  otutable_counts_ann.txt  sample_ids.txt | otutable_filter - 0
cat  cat  sample_ids.txt  |  otutable_subsamples otutable_counts_ann.txt  - | otutable_filter - 0

otutab_sample_subset 命令行模式:

usearch -otutab_sample_subset  otutable_counts.txt   -labels sample_ids.txt -output subset.txt

测试场景中不支持带有注释的OTU表。

本文材料为 BASE (Biostack Applied bioinformatic SEies ) 课程 Linux Command Line Tools for Life Scientists 材料,版权归 上海逻捷信息科技有限公司 所有。

Last Upate: 2017/10/21 21:07

Comments are closed.