| ## EMBOSS: nthseq

# Program nthseq

## Function

Writes one sequence from a multiple set of sequences

## Description

In EMBOSS, when an application has to write out many sequences, the normal style is to write them all into one file containing multiple sequences.

This default behaviour can be changed by using the qualifier '-ossingle' which writes many sequences into many files, each containing one sequence.

The program seqretsplit will take a file containing many sequences and will output many files, each containing one sequence. However you have no choice over the naming of the files - they are named after the ID name fo the sequence they contain.

If, however you have the situation where you have a file containing multiple sequences and you wish to extract one of them, then this application may be useful.

nthseq allows you to specify the name of the output file, so you may find that it is useful to include this program in scripts where you need to be able to specify the name of the resulting sequence files you create.

This application extracts the indicated sequence from a multiple set of sequences and writes it out.

## Usage

Here is a sample session with nthseq.

    % nthseq
    Input sequence: embl:eclac*
    The number of the sequence to output [1]: 2
    Output sequence [eclaca.fasta]:

## Command line arguments

       Mandatory qualifiers:
      [-sequence]          seqall     Sequence database USA
       -number             integer    The number of the sequence to output
      [-outseq]            seqout     Output sequence USA

       Optional qualifiers: (none)
       Advanced qualifiers: (none)
       General qualifiers:
      -help                bool       report command line options. More
                                      information on associated and general
                                      qualifiers can be found with -help -verbose

Mandatory qualifiers | Allowed values | Default
--- | --- | ---
[-sequence] (Parameter 1) | Sequence database USA | Readable sequence(s) | Required
-number | The number of the sequence to output | Integer 1 or more | 1
[-outseq] (Parameter 2) | Output sequence USA | Writeable sequence | <sequence>.format
Optional qualifiers | Allowed values | Default
(none)
Advanced qualifiers | Allowed values | Default
(none)

## Input file format

A file containing one or more sequences.

## Output file format

The output is the specified ordinal sequence from the input USA.

In the example, the second sequence from the input file will be written out to the specified output file.

## Data files

None.

## Notes

It may be useful to use this application in a small script that extracts all sequences from a multiple sequence file and explicitly names the output files in the way that you require.

For example:

    #!/usr/local/bin/perl -w
    if ($#ARGV !=1) {
      die "Usage: scriptname in out\n";
    }
    $count=1;
    @list = `infoseq $ARGV[0] -auto -only -name`;
    while ($count <= $#list+1) {
      system("nthseq -auto $ARGV[0] -n $count $ARGV[1]-$count.seq");
      $count++;
    }

## References

None.

## Warnings

None.

## Diagnostic Error Messages

None.

## Exit status

It always exits with a status of 0.

## Known bugs

None.

## See also

Program name | Description
--- | ---
biosed | Replace or delete sequence sections
cutseq | Removes a specified section from a sequence
degapseq | Removes gap characters from sequences
descseq | Alter the name or description of a sequence
entret | Reads and writes (returns) flatfile entries
extractfeat | Extract features from a sequence
extractseq | Extract regions from a sequence
listor | Writes a list file of the logical OR of two sets of sequences
maskfeat | Mask off features of a sequence
maskseq | Mask off regions of a sequence
newseq | Type in a short new sequence
noreturn | Removes carriage return from ASCII files
notseq | Excludes a set of sequences and writes out the remaining ones
pasteseq | Insert one sequence into another
revseq | Reverse and complement a sequence
seqret | Reads and writes (returns) sequences
seqretsplit | Reads and writes (returns) sequences in individual files
splitter | Split a sequence into (overlapping) smaller sequences
swissparse | Retrieves sequences from swissprot using keyword search
trimest | Trim poly-A tails off EST sequences
trimseq | Trim ambiguous bits off the ends of sequences
union | Reads sequence fragments and builds one sequence
vectorstrip | Strips out DNA between a pair of vector sequences
yank | Reads a sequence range, appends the full USA to a list file

The program seqretsplit will take a file containing many sequences and will output many files, each containing one sequence. However you have no choice over the naming of the files - they are named after the ID name fo the sequence they contain.

## Author(s)

This application was written by Gary Williams (gwilliam@hgmp.mrc.ac.uk)

## History

Written (2000) - Gary Williams

## Target users

This program is intended to be used by everyone and everything, from naive users to embedded scripts.

## Comments