rbbt-sources 3.0.12 → 3.0.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. metadata +2 -3
  3. data/lib/rbbt/sources/InterPro.rb +0 -105
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fee4f38313f5e77ca9887dfcc3b9048609da7d70
4
- data.tar.gz: 79061d834de12b2f2436d697f35956bef131f67f
3
+ metadata.gz: e02b0afc9999bf09316fdf670616018c6901ea4a
4
+ data.tar.gz: d2f69f47d90ee82bbe93a0ed296fc02d2039b12f
5
5
  SHA512:
6
- metadata.gz: 4432dd46252b0f301a190671ea81a9c3fca32415ba03edcee7ae22dcc73251a578a18db2b7df8b154b87ca5f06862353c52429153d360b8b7484a16cb40f1b59
7
- data.tar.gz: e46115accb053c9ab3a1df47cebafffe71730307005dd1a1408a33d9e74e2a0368619e021bc05fd3fadc8ea258cf96e54ed9e79c98ae4f6df7f5b6be7abdf3e6
6
+ metadata.gz: 529580fa92fe6641913436758a10d429d2be6343686abfa823c6e1078a18f691feba85b245e9256f1ea3cbaf604865edc0fb1cf5ba4635d8c74f6bc60f77c3e6
7
+ data.tar.gz: adb3c36787f15ac5910b7f3fcfb890b6e4a6200a59c49a3d7f3062970ab94ba6fc83d979ea79e5163626ff92ca69eb008e1530991cbcdaa372af5cc6bcd4eb0e
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-sources
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.12
4
+ version: 3.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-02 00:00:00.000000000 Z
11
+ date: 2014-08-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rbbt-util
@@ -92,7 +92,6 @@ files:
92
92
  - lib/rbbt/sources/COSTART.rb
93
93
  - lib/rbbt/sources/CTCAE.rb
94
94
  - lib/rbbt/sources/HPRD.rb
95
- - lib/rbbt/sources/InterPro.rb
96
95
  - lib/rbbt/sources/NCI.rb
97
96
  - lib/rbbt/sources/PSI_MI.rb
98
97
  - lib/rbbt/sources/STITCH.rb
@@ -1,105 +0,0 @@
1
- require 'rbbt-util'
2
- require 'rbbt/sources/organism'
3
-
4
- module InterPro
5
- extend Resource
6
- self.subdir = "share/databases/InterPro"
7
-
8
- InterPro.claim InterPro.source.protein2ipr, :url, "ftp://ftp.ebi.ac.uk/pub/databases/interpro/protein2ipr.dat.gz"
9
-
10
- InterPro.claim InterPro.protein_domains, :proc do
11
- organism = "Hsa"
12
- uniprot_colum = TSV::Parser.new(Organism.protein_identifiers(organism).open).all_fields.index("UniProt/SwissProt Accession")
13
- uniprots = CMD.cmd("grep -v '^#'|cut -f #{uniprot_colum+1}", :in => Organism.protein_identifiers(organism).open).read.split("\n").collect{|l| l.split("|")}.flatten.uniq.reject{|l| l.empty?}
14
-
15
- tsv = nil
16
- TmpFile.with_file(uniprots * "\n") do |tmpfile|
17
- tsv = TSV.open(CMD.cmd("cut -f 1,2,5,6 | sort -u |grep -w -F -f #{ tmpfile }", :in => InterPro.source.protein2ipr.open, :pipe => true), :merge => true, :type => :double)
18
- end
19
-
20
- tsv.key_field = "UniProt/SwissProt Accession"
21
- tsv.fields = ["InterPro ID", "Domain Start AA", "Domain End AA"]
22
- tsv.to_s
23
- end
24
-
25
- InterPro.claim InterPro.domain_names, :proc do
26
- #tsv = InterPro.source.protein2ipr.tsv :key_field => 1, :fields => [2], :type => :single
27
- tsv = TSV.open(CMD.cmd("cut -f 2,3 | sort -u", :in => InterPro.source.protein2ipr.open, :pipe => true), :merge => true, :type => :single)
28
-
29
- tsv.key_field = "InterPro ID"
30
- tsv.fields = ["Domain Name"]
31
- tsv.to_s
32
- end
33
-
34
- def self.name_index
35
- @@name_index ||= InterPro.domain_names.tsv(:persist => true, :unnamed => true)
36
- end
37
-
38
- def self.gene_index
39
- @@gene_index ||= InterPro.protein_domains.tsv(:persist => true, :key_field => "InterPro ID", :fields => ["UniProt/SwissProt Accession"], :type => :flat, :merge => true, :unnamed => true)
40
- end
41
-
42
- def self.domain_index
43
- @@domain_index ||= InterPro.protein_domains.tsv(:persist => true, :unnamed => true, :key_field => "UniProt/SwissProt Accession", :fields => ["InterPro ID"], :merge => true)
44
- end
45
-
46
- def self.domain_position_index
47
- @@domain_position_index ||= InterPro.protein_domains.tsv(:persist => true, :unnamed => true, :key_field => "UniProt/SwissProt Accession", :fields => ["InterPro ID", "Domain Start AA", "Domain End AA"], :type => :double, :merge => true)
48
- end
49
-
50
- def self.ens2uniprot(organism)
51
- @@ens2uniprot_index ||= {}
52
- @@ens2uniprot_index[organism] ||= Organism.protein_identifiers(organism).tsv(:persist => true, :unnamed => true, :fields => ["UniProt/SwissProt Accession"], :key_field => "Ensembl Protein ID", :type => :double, :merge => true)
53
- end
54
-
55
- end
56
-
57
- if defined? Entity
58
- module InterProDomain
59
- extend Entity
60
- self.format = "InterPro ID"
61
-
62
- self.annotation :organism
63
- property :description => :array2single do
64
- InterPro.name_index.values_at *self
65
- end
66
-
67
- property :name => :array2single do
68
- InterPro.name_index.values_at *self
69
- end
70
-
71
- property :proteins => :array2single do
72
- InterPro.gene_index.values_at(*self).
73
- collect{|genes| genes = genes.uniq; genes.organism = organism if genes.respond_to? :organism; genes }.tap{|o| Protein.setup(o, "UniProt/SwissProt Accession", organism)}
74
- end
75
-
76
- property :genes => :array2single do
77
- InterPro.gene_index.values_at(*self).
78
- collect{|genes| genes = [] if genes.nil?; genes = genes.uniq; genes.organism = organism if genes.respond_to? :organism; genes }.tap{|o| Gene.setup(o, "UniProt/SwissProt Accession", organism)}
79
- end
80
- end
81
-
82
- if defined? Protein and Entity === Protein
83
- module Protein
84
- property :interpro_domains => :array2single do
85
- self.collect do |protein|
86
- uniprot = (InterPro.ens2uniprot(protein.organism)[protein] || []).flatten
87
- uniprot.empty? ? nil :
88
- InterPro.domain_index.values_at(*uniprot).compact.flatten. each{|pth| pth.organism = organism if pth.respond_to? :organism }.uniq.tap{|o| InterProDomain.setup(o, organism)}
89
- end
90
- end
91
-
92
- property :interpro_domain_positions => :array2single do
93
- self.collect do |protein|
94
- if protein.nil?
95
- [].tap{|o| InterProDomain.setup(o, organism)}
96
- else
97
- uniprot = (InterPro.ens2uniprot(protein.organism)[protein] || []).flatten
98
- uniprot.empty? ? nil :
99
- InterPro.domain_position_index.values_at(*uniprot).compact.flatten(1).tap{|o| InterProDomain.setup(o, organism)}
100
- end
101
- end
102
- end
103
- end
104
- end
105
- end