extractseq

 

Function

Extract regions from a sequence

Description

extractseq allows you to specify one or more regions of a sequence to extract sub-sequences from to build up a contiguous resulting sequence.

This is modelled on the cell's process of splicing out exons from mRNA, but the program is generally applicable to any cutting and splicing or editing operation on a single sequence.

extractseq reads in a sequence and a set of regions of that sequence as specified by pairs of start and end positions (either on the command-line or contained in a file) and writes out the specified regions of the input sequence in the order in which they have been specified. Thus, if the sequence "AAAGGGTTT" has been input and the regions: "7-9, 3-4" have been specified, then the output sequence will be: "TTTAG".

Usage

Here is a sample session with extractseq

Extract the region from position 10 to 20:


% extractseq tembl:x65923 result.seq -regions '10-20' 
Extract regions from a sequence

Go to the input files for this example
Go to the output files for this example

Example 2

Extract the regions 10 to 20, 30 to 45, 533 to 537:


% extractseq tembl:x65921 result2.seq -regions '10-20 30-45 533-537' 
Extract regions from a sequence

Go to the input files for this example
Go to the output files for this example

Example 3

Extract the regions 782-856, 951-1095, 1557-1612 and 1787-1912:


% extractseq tembl:x65921 -reg "782..856,951..1095,1557..1612,1787..1912" stdout 
Extract regions from a sequence

>X65921 X65921.1 H.sapiens fau 1 gene
atgcagctctttgtccgcgcccaggagctacacaccttcgaggtgaccggccaggaaacg
gtcgcccagatcaaggctcatgtagcctcactggagggcattgccccggaagatcaagtc
gtgctcctggcaggcgcgcccctggaggatgaggccactctgggccagtgcggggtggag
gccctgactaccctggaagtagcaggccgcatgcttggaggtaaagtccatggttccctg
gcccgtgctggaaaagtgagaggtcagactcctaaggtggccaaacaggagaagaagaag
aagaagacaggtcgggctaagcggcggatgcagtacaaccggcgctttgtcaacgttgtg
cccacctttggcaagaagaagggccccaatgccaactcttaa

Example 4

Extract the regions 782-856, 951-1095, 1557-1612 and 1787-1912 all to separate output sequences:


% extractseq tembl:x65921 -reg "782..856,951..1095,1557..1612,1787..1912" stdout -separate 
Extract regions from a sequence

>X65921_782_856 H.sapiens fau 1 gene
atgcagctctttgtccgcgcccaggagctacacaccttcgaggtgaccggccaggaaacg
gtcgcccagatcaag
>X65921_951_1095 H.sapiens fau 1 gene
gctcatgtagcctcactggagggcattgccccggaagatcaagtcgtgctcctggcaggc
gcgcccctggaggatgaggccactctgggccagtgcggggtggaggccctgactaccctg
gaagtagcaggccgcatgcttggag
>X65921_1557_1612 H.sapiens fau 1 gene
gtaaagtccatggttccctggcccgtgctggaaaagtgagaggtcagactcctaag
>X65921_1787_1912 H.sapiens fau 1 gene
gtggccaaacaggagaagaagaagaagaagacaggtcgggctaagcggcggatgcagtac
aaccggcgctttgtcaacgttgtgcccacctttggcaagaagaagggccccaatgccaac
tcttaa

Command line arguments

   Standard (Mandatory) qualifiers:
  [-sequence]          sequence   Sequence filename and optional format, or
                                  reference (input USA)
   -regions            range      [Whole sequence] Regions to extract.
                                  A set of regions is specified by a set of
                                  pairs of positions.
                                  The positions are integers.
                                  They are separated by any non-digit,
                                  non-alpha character.
                                  Examples of region specifications are:
                                  24-45, 56-78
                                  1:45, 67=99;765..888
                                  1,5,8,10,23,45,57,99
  [-outseq]            seqoutall  [.] Sequence set(s)
                                  filename and optional format (output USA)

   Additional (Optional) qualifiers:
   -separate           boolean    [N] If this is set true then each specified
                                  region is written out as a separate
                                  sequence. The name of the sequence is
                                  created from the name of the original
                                  sequence with the start and end positions of
                                  the range appended with underscore
                                  characters between them, eg: XYZ region 2 to
                                  34 is written as: XYZ_2_34

   Advanced (Unprompted) qualifiers: (none)
   Associated qualifiers:

   "-sequence" associated qualifiers
   -sbegin1            integer    Start of the sequence to be used
   -send1              integer    End of the sequence to be used
   -sreverse1          boolean    Reverse (if DNA)
   -sask1              boolean    Ask for begin/end/reverse
   -snucleotide1       boolean    Sequence is nucleotide
   -sprotein1          boolean    Sequence is protein
   -slower1            boolean    Make lower case
   -supper1            boolean    Make upper case
   -sformat1           string     Input sequence format
   -sdbname1           string     Database name
   -sid1               string     Entryname
   -ufo1               string     UFO features
   -fformat1           string     Features format
   -fopenfile1         string     Features file name

   "-outseq" associated qualifiers
   -osformat2          string     Output seq format
   -osextension2       string     File name extension
   -osname2            string     Base file name
   -osdirectory2       string     Output directory
   -osdbname2          string     Database name to add
   -ossingle2          boolean    Separate file for each entry
   -oufo2              string     UFO features
   -offormat2          string     Features format
   -ofname2            string     Features file name
   -ofdirectory2       string     Output directory

   General qualifiers:
   -auto               boolean    Turn off prompts
   -stdout             boolean    Write standard output
   -filter             boolean    Read standard input, write standard output
   -options            boolean    Prompt for standard and additional values
   -debug              boolean    Write debug output to program.dbg
   -verbose            boolean    Report some/full command line options
   -help               boolean    Report command line options. More
                                  information on associated and general
                                  qualifiers can be found with -help -verbose
   -warning            boolean    Report warnings
   -error              boolean    Report errors
   -fatal              boolean    Report fatal errors
   -die                boolean    Report dying program messages

Standard (Mandatory) qualifiers Allowed values Default
[-sequence]
(Parameter 1)
Sequence filename and optional format, or reference (input USA) Readable sequence Required
-regions Regions to extract. A set of regions is specified by a set of pairs of positions. The positions are integers. They are separated by any non-digit, non-alpha character. Examples of region specifications are: 24-45, 56-78 1:45, 67=99;765..888 1,5,8,10,23,45,57,99 Sequence range Whole sequence
[-outseq]
(Parameter 2)
Sequence set(s) filename and optional format (output USA) Writeable sequence(s) <*>.format
Additional (Optional) qualifiers Allowed values Default
-separate If this is set true then each specified region is written out as a separate sequence. The name of the sequence is created from the name of the original sequence with the start and end positions of the range appended with underscore characters between them, eg: XYZ region 2 to 34 is written as: XYZ_2_34 Boolean value Yes/No No
Advanced (Unprompted) qualifiers Allowed values Default
(none)

Input file format

extractseq reads a normal sequence USA.

Input files for usage example

'tembl:x65923' is a sequence entry in the example nucleic acid database 'tembl'

Database entry: tembl:x65923

ID   X65923; SV 1; linear; mRNA; STD; HUM; 518 BP.
XX
AC   X65923;
XX
DT   13-MAY-1992 (Rel. 31, Created)
DT   18-APR-2005 (Rel. 83, Last updated, Version 11)
XX
DE   H.sapiens fau mRNA
XX
KW   fau gene.
XX
OS   Homo sapiens (human)
OC   Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi; Mammalia;
OC   Eutheria; Euarchontoglires; Primates; Haplorrhini; Catarrhini; Hominidae;
OC   Homo.
XX
RN   [1]
RP   1-518
RA   Michiels L.M.R.;
RT   ;
RL   Submitted (29-APR-1992) to the EMBL/GenBank/DDBJ databases.
RL   L.M.R. Michiels, University of Antwerp, Dept of Biochemistry,
RL   Universiteisplein 1, 2610 Wilrijk, BELGIUM
XX
RN   [2]
RP   1-518
RX   PUBMED; 8395683.
RA   Michiels L., Van der Rauwelaert E., Van Hasselt F., Kas K., Merregaert J.;
RT   " fau cDNA encodes a ubiquitin-like-S30 fusion protein and is expressed as
RT   an antisense sequences in the Finkel-Biskis-Reilly murine sarcoma virus";
RL   Oncogene 8(9):2537-2546(1993).
XX
DR   H-InvDB; HIT000322806.
XX
FH   Key             Location/Qualifiers
FH
FT   source          1..518
FT                   /organism="Homo sapiens"
FT                   /chromosome="11q"
FT                   /map="13"
FT                   /mol_type="mRNA"
FT                   /clone_lib="cDNA"
FT                   /clone="pUIA 631"
FT                   /tissue_type="placenta"
FT                   /db_xref="taxon:9606"
FT   misc_feature    57..278
FT                   /note="ubiquitin like part"
FT   CDS             57..458
FT                   /gene="fau"
FT                   /db_xref="GDB:135476"
FT                   /db_xref="GOA:P35544"
FT                   /db_xref="GOA:P62861"
FT                   /db_xref="HGNC:3597"
FT                   /db_xref="UniProtKB/Swiss-Prot:P35544"
FT                   /db_xref="UniProtKB/Swiss-Prot:P62861"
FT                   /protein_id="CAA46716.1"
FT                   /translation="MQLFVRAQELHTFEVTGQETVAQIKAHVASLEGIAPEDQVVLLAG
FT                   APLEDEATLGQCGVEALTTLEVAGRMLGGKVHGSLARAGKVRGQTPKVAKQEKKKKKTG
FT                   RAKRRMQYNRRFVNVVPTFGKKKGPNANS"
FT   misc_feature    98..102
FT                   /note="nucleolar localization signal"
FT   misc_feature    279..458
FT                   /note="S30 part"
FT   polyA_signal    484..489
FT   polyA_site      509
XX
SQ   Sequence 518 BP; 125 A; 139 C; 148 G; 106 T; 0 other;
     ttcctctttc tcgactccat cttcgcggta gctgggaccg ccgttcagtc gccaatatgc        60
     agctctttgt ccgcgcccag gagctacaca ccttcgaggt gaccggccag gaaacggtcg       120
     cccagatcaa ggctcatgta gcctcactgg agggcattgc cccggaagat caagtcgtgc       180
     tcctggcagg cgcgcccctg gaggatgagg ccactctggg ccagtgcggg gtggaggccc       240
     tgactaccct ggaagtagca ggccgcatgc ttggaggtaa agttcatggt tccctggccc       300
     gtgctggaaa agtgagaggt cagactccta aggtggccaa acaggagaag aagaagaaga       360
     agacaggtcg ggctaagcgg cggatgcagt acaaccggcg ctttgtcaac gttgtgccca       420
     cctttggcaa gaagaagggc cccaatgcca actcttaagt cttttgtaat tctggctttc       480
     tctaataaaa aagccactta gttcagtcaa aaaaaaaa                               518
//

Input files for usage example 2

Database entry: tembl:x65921

ID   X65921; SV 1; linear; genomic DNA; STD; HUM; 2016 BP.
XX
AC   X65921; S45242;
XX
DT   13-MAY-1992 (Rel. 31, Created)
DT   14-NOV-2006 (Rel. 89, Last updated, Version 7)
XX
DE   H.sapiens fau 1 gene
XX
KW   fau 1 gene.
XX
OS   Homo sapiens (human)
OC   Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi; Mammalia;
OC   Eutheria; Euarchontoglires; Primates; Haplorrhini; Catarrhini; Hominidae;
OC   Homo.
XX
RN   [1]
RP   1-2016
RA   Kas K.;
RT   ;
RL   Submitted (29-APR-1992) to the EMBL/GenBank/DDBJ databases.
RL   K. Kas, University of Antwerp, Dept of Biochemistry T3.22,
RL   Universiteitsplein 1, 2610 Wilrijk, BELGIUM
XX
RN   [2]
RP   1-2016
RX   DOI; 10.1016/0006-291X(92)91286-Y.
RX   PUBMED; 1326960.
RA   Kas K., Michiels L., Merregaert J.;
RT   "Genomic structure and expression of the human fau gene: encoding the
RT   ribosomal protein S30 fused to a ubiquitin-like protein.";
RL   Biochem. Biophys. Res. Commun. 187(2):927-933(1992).
XX
DR   GDB; 191789.
DR   GDB; 191790.
DR   GDB; 354872.
DR   GDB; 4590236.
XX
FH   Key             Location/Qualifiers
FH
FT   source          1..2016
FT                   /organism="Homo sapiens"
FT                   /mol_type="genomic DNA"
FT                   /clone_lib="CML cosmid"
FT                   /clone="15.1"
FT                   /db_xref="taxon:9606"
FT   mRNA            join(408..504,774..856,951..1095,1557..1612,1787..>1912)
FT                   /gene="fau 1"
FT   exon            408..504
FT                   /number=1


  [Part of this file has been deleted for brevity]

FT                   RAKRRMQYNRRFVNVVPTFGKKKGPNANS"
FT   intron          857..950
FT                   /number=2
FT   exon            951..1095
FT                   /number=3
FT   intron          1096..1556
FT                   /number=3
FT   exon            1557..1612
FT                   /number=4
FT   intron          1613..1786
FT                   /number=4
FT   exon            1787..>1912
FT                   /number=5
FT   polyA_signal    1938..1943
XX
SQ   Sequence 2016 BP; 421 A; 562 C; 538 G; 495 T; 0 other;
     ctaccatttt ccctctcgat tctatatgta cactcgggac aagttctcct gatcgaaaac        60
     ggcaaaacta aggccccaag taggaatgcc ttagttttcg gggttaacaa tgattaacac       120
     tgagcctcac acccacgcga tgccctcagc tcctcgctca gcgctctcac caacagccgt       180
     agcccgcagc cccgctggac accggttctc catccccgca gcgtagcccg gaacatggta       240
     gctgccatct ttacctgcta cgccagcctt ctgtgcgcgc aactgtctgg tcccgccccg       300
     tcctgcgcga gctgctgccc aggcaggttc gccggtgcga gcgtaaaggg gcggagctag       360
     gactgccttg ggcggtacaa atagcaggga accgcgcggt cgctcagcag tgacgtgaca       420
     cgcagcccac ggtctgtact gacgcgccct cgcttcttcc tctttctcga ctccatcttc       480
     gcggtagctg ggaccgccgt tcaggtaaga atggggcctt ggctggatcc gaagggcttg       540
     tagcaggttg gctgcggggt cagaaggcgc ggggggaacc gaagaacggg gcctgctccg       600
     tggccctgct ccagtcccta tccgaactcc ttgggaggca ctggccttcc gcacgtgagc       660
     cgccgcgacc accatcccgt cgcgatcgtt tctggaccgc tttccactcc caaatctcct       720
     ttatcccaga gcatttcttg gcttctctta caagccgtct tttctttact cagtcgccaa       780
     tatgcagctc tttgtccgcg cccaggagct acacaccttc gaggtgaccg gccaggaaac       840
     ggtcgcccag atcaaggtaa ggctgcttgg tgcgccctgg gttccatttt cttgtgctct       900
     tcactctcgc ggcccgaggg aacgcttacg agccttatct ttccctgtag gctcatgtag       960
     cctcactgga gggcattgcc ccggaagatc aagtcgtgct cctggcaggc gcgcccctgg      1020
     aggatgaggc cactctgggc cagtgcgggg tggaggccct gactaccctg gaagtagcag      1080
     gccgcatgct tggaggtgag tgagagagga atgttctttg aagtaccggt aagcgtctag      1140
     tgagtgtggg gtgcatagtc ctgacagctg agtgtcacac ctatggtaat agagtacttc      1200
     tcactgtctt cagttcagag tgattcttcc tgtttacatc cctcatgttg aacacagacg      1260
     tccatgggag actgagccag agtgtagttg tatttcagtc acatcacgag atcctagtct      1320
     ggttatcagc ttccacacta aaaattaggt cagaccaggc cccaaagtgc tctataaatt      1380
     agaagctgga agatcctgaa atgaaactta agatttcaag gtcaaatatc tgcaactttg      1440
     ttctcattac ctattgggcg cagcttctct ttaaaggctt gaattgagaa aagaggggtt      1500
     ctgctgggtg gcaccttctt gctcttacct gctggtgcct tcctttccca ctacaggtaa      1560
     agtccatggt tccctggccc gtgctggaaa agtgagaggt cagactccta aggtgagtga      1620
     gagtattagt ggtcatggtg ttaggacttt ttttcctttc acagctaaac caagtccctg      1680
     ggctcttact cggtttgcct tctccctccc tggagatgag cctgagggaa gggatgctag      1740
     gtgtggaaga caggaaccag ggcctgatta accttccctt ctccaggtgg ccaaacagga      1800
     gaagaagaag aagaagacag gtcgggctaa gcggcggatg cagtacaacc ggcgctttgt      1860
     caacgttgtg cccacctttg gcaagaagaa gggccccaat gccaactctt aagtcttttg      1920
     taattctggc tttctctaat aaaaaagcca cttagttcag tcatcgcatt gtttcatctt      1980
     tacttgcaag gcctcaggga gaggtgtgct tctcgg                                2016
//

You can specifiy a file of ranges to extract by giving the '-regions' qualifier the value '@' followed by the name of the file containing the ranges. (eg: '-regions @myfile').

The format of the range file is:

An example range file is:


# this is my set of ranges
12   23
 4   5       this is like 12-23, but smaller
67   10348   interesting region

Output file format

The output is a normal sequence file.

Output files for usage example

File: result.seq

>X65923 X65923.1 H.sapiens fau mRNA
ctcgactccat

Output files for usage example 2

File: result2.seq

>X65921 X65921.1 H.sapiens fau 1 gene
tccctctcgatacactcgggacaagttagggc

If the option '-separate' is used then each specified region is written to the output file as a separate sequence. The name of the sequence is created from the name of the original sequence with the start and end positions of the range appended with underscore characters between them,

For example: "XYZ region 2 to 34" is written as: "XYZ_2_34"

Data files

None.

Notes

None.

References

None.

Warnings

None.

Diagnostic Error Messages

Several warning messages about malformed region specifications:

Exit status

It exits with status 0, unless a region is badly constructed.

Known bugs

None noted.

Comments

See also

Program nameDescription
biosed Replace or delete sequence sections
codcopy Reads and writes a codon usage table
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
extractalign Extract regions from a sequence alignment
extractfeat Extract features from a sequence
listor Write a list file of the logical OR of two sets of sequences
makenucseq Creates random nucleotide sequences
makeprotseq Creates random protein 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 Exclude a set of sequences and write out the remaining ones
nthseq Writes one sequence from a multiple set of sequences
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
skipseq Reads and writes (returns) sequences, skipping first few
splitter Split a sequence into (overlapping) smaller sequences
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

Author(s)

Gary Williams (gwilliam © rfcgr.mrc.ac.uk)
MRC Rosalind Franklin Centre for Genomics Research Wellcome Trust Genome Campus, Hinxton, Cambridge, CB10 1SB, 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

None