macでインフォマティクス

macでインフォマティクス

NGS関連のインフォマティクス情報についてまとめています。

rRNAのコンタミを除く SortMeRNA

 

SortMeRNAはメタトランスクリプトームやメタゲノムのシーケンスデータからrRNAを高感度に検出し、フィルタリングするツール。出力はfasta、fastq、アライメントのsam、またblastライクな出力も可能である。Illumina, 454, Ion Torrent and PacBioのシーケンスデータに対応している。QIIMEと一緒に使用することで、OTUを検出し系統解析にも利用することができる。

 

 マニュアル

 http://bioinfo.lifl.fr/RNA/sortmerna/code/SortMeRNA-user-manual-v2.1.pdf

FAQ

http://bioinfo.lifl.fr/sortmerna/faqs.php

 

ダウンロード

公式からBinaryをダウンロードできる。

公式サイト

http://bioinfo.lifl.fr/sortmerna/sortmerna.php

 

> indexdb_rna -h

$ sortmerna -h

 

  Program:     SortMeRNA version 2.1, 01/02/2016

  Copyright:   2012-16 Bonsai Bioinformatics Research Group:

               LIFL, University Lille 1, CNRS UMR 8022, INRIA Nord-Europe

               2014-16 Knight Lab, Department of Pediatrics, UCSD, La Jolla,

  Disclaimer:  SortMeRNA comes with ABSOLUTELY NO WARRANTY; without even the

               implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

               See the GNU Lesser General Public License for more details.

  Contact:     Evguenia Kopylova, jenya.kopylov@gmail.com 

               Laurent Noé, laurent.noe@lifl.fr

               Hélène Touzet, helene.touzet@lifl.fr

 

 

  usage:   ./sortmerna --ref db.fasta,db.idx --reads file.fa --aligned base_name_output [OPTIONS]:

 

  -------------------------------------------------------------------------------------------------------------

  | parameter          value           description                                                    default |

  -------------------------------------------------------------------------------------------------------------

     --ref             STRING,STRING   FASTA reference file, index file                               mandatory

                                         (ex. --ref /path/to/file1.fasta,/path/to/index1)

                                         If passing multiple reference files, separate 

                                         them using the delimiter ':',

                                         (ex. --ref /path/to/file1.fasta,/path/to/index1:/path/to/file2.fasta,path/to/index2)

     --reads           STRING          FASTA/FASTQ reads file                                         mandatory

     --aligned         STRING          aligned reads filepath + base file name                        mandatory

                                         (appropriate extension will be added)

 

   [COMMON OPTIONS]: 

     --other           STRING          rejected reads filepath + base file name

                                         (appropriate extension will be added)

     --fastx           BOOL            output FASTA/FASTQ file                                        off

                                         (for aligned and/or rejected reads)

     --sam             BOOL            output SAM alignment                                           off

                                         (for aligned reads only)

     --SQ              BOOL            add SQ tags to the SAM file                                    off

     --blast           STRING          output alignments in various Blast-like formats                

                                        '0' - pairwise

                                        '1' - tabular (Blast -m 8 format)

                                        '1 cigar' - tabular + column for CIGAR 

                                        '1 cigar qcov' - tabular + columns for CIGAR

                                                         and query coverage

                                        '1 cigar qcov qstrand' - tabular + columns for CIGAR,

                                                                query coverage and strand

     --log             BOOL            output overall statistics                                      off

     --num_alignments  INT             report first INT alignments per read reaching E-value          -1

                                        (--num_alignments 0 signifies all alignments will be output)

       or (default)

     --best            INT             report INT best alignments per read reaching E-value           1

                                         by searching --min_lis INT candidate alignments

                                        (--best 0 signifies all candidate alignments will be searched)

     --min_lis         INT             search all alignments having the first INT longest LIS         2

                                         LIS stands for Longest Increasing Subsequence, it is 

                                         computed using seeds' positions to expand hits into

                                         longer matches prior to Smith-Waterman alignment. 

     --print_all_reads BOOL            output null alignment strings for non-aligned reads            off

                                         to SAM and/or BLAST tabular files

     --paired_in       BOOL            both paired-end reads go in --aligned fasta/q file             off

                                         (interleaved reads only, see Section 4.2.4 of User Manual)

     --paired_out      BOOL            both paired-end reads go in --other fasta/q file               off

                                         (interleaved reads only, see Section 4.2.4 of User Manual)

     --match           INT             SW score (positive integer) for a match                        2

     --mismatch        INT             SW penalty (negative integer) for a mismatch                   -3

     --gap_open        INT             SW penalty (positive integer) for introducing a gap            5

     --gap_ext         INT             SW penalty (positive integer) for extending a gap              2

     -N                INT             SW penalty for ambiguous letters (N's)                         scored as --mismatch

     -F                BOOL            search only the forward strand                                 off

     -R                BOOL            search only the reverse-complementary strand                   off

     -a                INT             number of threads to use                                       1

     -e                DOUBLE          E-value threshold                                              1

     -m                INT             INT Mbytes for loading the reads into memory                   1024

                                        (maximum -m INT is 49152)

     -v                BOOL            verbose                                                        off

 

 

   [OTU PICKING OPTIONS]: 

     --id              DOUBLE          %id similarity threshold (the alignment must                   0.97

                                         still pass the E-value threshold)

     --coverage        DOUBLE          %query coverage threshold (the alignment must                  0.97

                                         still pass the E-value threshold)

     --de_novo_otu     BOOL            FASTA/FASTQ file for reads matching database < %id             off

                                         (set using --id) and < %cov (set using --coverage) 

                                         (alignment must still pass the E-value threshold)

     --otu_map         BOOL            output OTU map (input to QIIME's make_otu_table.py)            off

 

 

   [ADVANCED OPTIONS] (see SortMeRNA user manual for more details): 

    --passes           INT,INT,INT     three intervals at which to place the seed on the read         L,L/2,3

                                         (L is the seed length set in ./indexdb_rna)

    --edges            INT             number (or percent if INT followed by % sign) of               4

                                         nucleotides to add to each edge of the read

                                         prior to SW local alignment 

    --num_seeds        INT             number of seeds matched before searching                       2

                                         for candidate LIS 

    --full_search      BOOL            search for all 0-error and 1-error seed                        off

                                         matches in the index rather than stopping

                                         after finding a 0-error match (<1% gain in

                                         sensitivity with up four-fold decrease in speed)

    --pid              BOOL            add pid to output file names                                   off

 

 

   [HELP]:

     -h                BOOL            help

     --version         BOOL            SortMeRNA version number

 

 

> indexdb_rna -h

$ indexdb_rna -h

 

  Program:     SortMeRNA version 2.1, 01/02/2016

  Copyright:   2012-16 Bonsai Bioinformatics Research Group:

               LIFL, University Lille 1, CNRS UMR 8022, INRIA Nord-Europe

               2014-16 Knight Lab, Department of Pediatrics, UCSD, La Jolla,

  Disclaimer:  SortMeRNA comes with ABSOLUTELY NO WARRANTY; without even the

               implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

               See the GNU Lesser General Public License for more details.

  Contact:     Evguenia Kopylova, jenya.kopylov@gmail.com 

               Laurent Noé, laurent.noe@lifl.fr

               Hélène Touzet, helene.touzet@lifl.fr

 

 

  usage:   ./indexdb_rna --ref db.fasta,db.idx [OPTIONS]:

 

  --------------------------------------------------------------------------------------------------------

  | parameter        value           description                                                 default |

  --------------------------------------------------------------------------------------------------------

     --ref           STRING,STRING   FASTA reference file, index file                            mandatory

                                      (ex. --ref /path/to/file1.fasta,/path/to/index1)

                                       If passing multiple reference sequence files, separate

                                       them by ':',

                                      (ex. --ref /path/to/file1.fasta,/path/to/index1:/path/to/file2.fasta,path/to/index2)

   [OPTIONS]:

     --tmpdir        STRING          directory where to write temporary files

     -m              INT             the amount of memory (in Mbytes) for building the index     3072 

     -L              INT             seed length                                                 18

     --max_pos       INT             maximum number of positions to store for each unique L-mer  10000

                                      (setting --max_pos 0 will store all positions)

     -v              BOOL            verbose

     -h              BOOL            help

パスを通しておく。

 

ラン

解析にはデータベースのrRNA (FASTA) にindexをつける必要がある。ここではRNA_databases/にあるbacteriaの16Sにindexをつけている。

mkdir index
indexdb_rna --ref ./rRNA_databases/silva-bac-16s-id90.fasta,./index/silva-bac-16s-db -v
  • -v   verbose
  • --ref   STRING,STRING   FASTA reference file, index file

fastaとinexの間は","で区切る。複数のファイルを指定することもできる(マニュアル参照)。

データベースにはアーキアと真核生物のrRNAの配列もある。

f:id:kazumaxneo:20180121124845j:plain

 

データベースが準備できたら、fastqからrRNAを検出し、別ファイルで出力する。

indexdb_rna --ref ./rRNA_databases/silva-bac-16s-id90.fasta,./index/silva-bac-16s --reads file.fq --aligned mapped --fastx --other nohit
  • --fastx    output FASTA/FASTQ file  
  • --aligned         STRING          aligned reads filepath + base file name 

mapped.fastqとnohit.fastqが出力される。

 

--fastx、--otherのほかに、--samや--blastがある。詳細はhelpから確認してください。

 

引用

SortMeRNA: fast and accurate filtering of ribosomal RNAs in metatranscriptomic data.

Kopylova E, Noé L, Touzet H.

Bioinformatics. 2012 Dec 15;28(24):3211-7.