Class | Bio::PSORT::PSORT2
In: | lib/bio/appl/psort.rb lib/bio/appl/psort/report.rb
Parent: | Object

# Bio::PSORT::PSORT2

Bio::PSORT::PSORT2 is a wapper class for the original PSORT program.

## Example

     serv = Bio::PSORT::PSORT2.imsut
     serv.title = 'Query_title_splited_by_white space'
     serv.exec(seq, false)  # seq.class => String
     serv.exec(seq)
     report = serv.exec(Bio::FastaFormat.new(seq))
     report_raw = serv.exec(Bio::FastaFormat.new(seq), false)

## References

1. Nakai, K. and Horton, P., PSORT: a program for detecting the sorting signals of proteins and predicting their subcellular localization, Trends Biochem. Sci, 24(1) 34-35 (1999). [PMID:10087920]

### Methods

exec imsut new okazaki peking remote

### Classes and Modules

Class Bio::PSORT::PSORT2::Remote
Class Bio::PSORT::PSORT2::Report

### Constants

SclNames | = | { 'csk' => 'cytoskeletal', 'cyt' => 'cytoplasmic', 'nuc' => 'nuclear', 'mit' => 'mitochondrial', 'ves' => 'vesicles of secretory system', 'end' => 'endoplasmic reticulum', 'gol' => 'Golgi', 'vac' => 'vacuolar', 'pla' => 'plasma membrane', 'pox' => 'peroxisomal', 'exc' => 'extracellular, including cell wall', '---' => 'other' |  | Subcellular localization name codes used by PSORT2
Features | = | [ 'psg', # PSG: PSG score 'gvh', # GvH: GvH score 'alm', # ALOM: $xmax 'tms', # ALOM: $count 'top', # MTOP: Charge difference: $mtopscr 'mit', # MITDISC: Score: $score 'mip', # Gavel: motif at $isite 'nuc', # NUCDISC: NLS Score: $score 'erl', # KDEL: ($seg|none) 'erm', # ER Membrane Retention Signals: ($cseg|none) $scr 'pox', # SKL: ($pat|none) $scr 'px2', # PTS2: (found|none) ($#match < 0) ? 0 : ($#match+1); 'vac', # VAC: (found|none) ($#match < 0) ? 0 : ($#match+1); 'rnp', # RNA-binding motif: (found|none) ($#match < 0) ? 0 : ($#match+1); 'act', # Actinin-type actin-binding motif: (found|none) $hit 'caa', # Prenylation motif: (2|1|0) CaaX,CXC,CC,nil 'yqr', # memYQRL: (found|none) $scr 'tyr', # Tyrosines in the tail: (none|\S+[,]) # 10 * scalar(@ylist) / ($end - $start + 1); 'leu', # Dileucine motif in the tail: (none|found) $scr 'gpi', # >>> Seem to be GPI anchored 'myr', # NMYR: (none|\w) $scr 'dna', # checking 63 PROSITE DNA binding motifs: $hit 'rib', # checking 71 PROSITE ribosomal protein motifs: $hit 'bac', # checking 33 PROSITE prokaryotic DNA binding motifs: $hit 'm1a', # $mtype eq '1a' 'm1b', # $mtype eq '1b' 'm2', # $mtype eq '2 ' 'mNt', # $mtype eq 'Nt' 'm3a', # $mtype eq '3a' 'm3b', # $mtype eq '3b' 'm_', # $mtype eq '__' tms == 0 'ncn', # NNCN: ($NetOutput[1] > $NetOutput[0]) ? $output : (-$output); 'lps', # COIL: $count 'len' |  | Feature name codes
FeaturesLong | = | { 'psg' => 'PSG', 'gvh' => 'GvH', 'tms' => 'ALOM', 'alm' => 'ALOM', 'top' => 'MTOP', 'mit' => 'MITDISC', 'mip' => 'Gavel', 'nuc' => 'NUCDISC', 'erl' => 'KDEL', 'erm' => 'ER Membrane Retention Signals', 'pox' => 'SKL', 'px2' => 'PTS2', 'vac' => 'VAC', 'rnp' => 'RNA-binding motif', 'act' => 'Actinin-type actin-binding motif', 'caa' => 'Prenylation motif', 'yqr' => 'memYQRL', 'tyr' => 'Tyrosines in the tail', 'leu' => 'Dileucine motif in the tail', 'gpi' => '>>> Seems to be GPI anchored', 'myr' => 'NMYR', 'dna' => 'checking 63 PROSITE DNA binding motifs', 'rib' => 'checking 71 PROSITE ribosomal protein motifs', 'bac' => 'ochecking 33 PROSITE prokaryotic DNA binding motifs:', 'm1a' => '', 'm1b' => '', 'm2' => '', 'mNt' => '', 'm3a' => '', 'm3b' => '', 'm_' => '', 'ncn' => 'NNCN', 'lps' => 'COIL', 'len' => 'AA' |  | Feature name codes (long version).

### Attributes

origin | [RW] | An accessor of the origin argument. Default setting is ``yeast’’.
title | [RW] | An accessor of the title argument. Default setting is ``QUERY’’. The value is automatically setted if you use a query in Bio::FastaFormat.

### Public Class methods

imsut()

Returns a PSORT2 CGI Driver object (Bio::PSORT::PSORT2::Remote) connecting to the IMSUT server.

[Source]

         # File lib/bio/appl/psort.rb, line 331
    331:       def self.imsut
    332:         self.remote(ServerURI[:IMSUT][:PSORT2])
    333:       end

new(driver, origin = 'yeast')

Sets a server CGI Driver (Bio::PSORT::PSORT2::Remote).

[Source]

         # File lib/bio/appl/psort.rb, line 357
    357:       def initialize(driver, origin = 'yeast')
    358:         @serv   = driver
    359:         @origin = origin
    360:         @title  = ''
    361:       end

okazaki()

Returns a PSORT2 CGI Driver object (Bio::PSORT::PSORT2::Remote) connecting to the NIBB server.

[Source]

         # File lib/bio/appl/psort.rb, line 337
    337:       def self.okazaki
    338:         self.remote(ServerURI[:Okazaki][:PSORT2])
    339:       end

peking()

Returns a PSORT2 CGI Driver object (Bio::PSORT::PSORT2::Remote) connecting to the Peking server.

[Source]

         # File lib/bio/appl/psort.rb, line 343
    343:       def self.peking
    344:         self.remote(ServerURI[:Peking][:PSORT2])
    345:       end

remote(host, path = nil)

Returns a PSORT2 CGI Driver object (Bio::PSORT::PSORT2::Remote).

PSORT official hosts:

     key      host                     path
     -------  -----------------------  --------------------  ---------
     IMSUT    psort.ims.u-tokyo.ac.jp  /cgi-bin/runpsort.pl  (default)
     Okazaki  psort.nibb.ac.jp         /cgi-bin/runpsort.pl
     Peking   srs.pku.edu.cn:8088      /cgi-bin/runpsort.pl

[Source]

         # File lib/bio/appl/psort.rb, line 325
    325:       def self.remote(host, path = nil)
    326:         self.new(Remote.new(host, path))
    327:       end

### Public Instance methods

exec(faa, parsing = true)

Executes PSORT II prediction and returns Report object (Bio::PSORT::PSORT2::Report) if parsing = true. Returns PSORT II report in text if parsing = false.

[Source]

         # File lib/bio/appl/psort.rb, line 367
    367:       def exec(faa, parsing = true)
    368:         if faa.class == Bio::FastaFormat
    369:           @title = faa.entry_id if @title == nil
    370:           @sequence = faa.seq
    371:           @serv.args = {'origin' => @origin, 'title' => @title}
    372:           @serv.parsing = parsing
    373:           return @serv.exec(@sequence)
    374:         else
    375:           self.exec(Bio::FastaFormat.new(faa), parsing)
    376:         end
    377:       end

[Validate]