bio-rocker 0.2.1beta → 0.2.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/ROCker +1 -1
- data/lib/rocker.rb +9 -5
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d1f7834b90614d13e3b1c8f23b56e282b65066aa
|
4
|
+
data.tar.gz: 80cb0cf8a692ee23421167d5d0e7822124fb51f8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0592a06d98989b18dc7be92243288df57cf01c623e694d3faafd5f800843290b055dba586195a3bac8439d178c9372c77e5a195f47f20fb5142f4e0bae28fc7e
|
7
|
+
data.tar.gz: 88d41e820e038df84995bce99b17551a17181f81e07adf0d1969ff1ece7d53704f25699b44d8748865f00f9dbac77f6c3897b71fec034f04682d1058ed2422c3
|
data/bin/ROCker
CHANGED
@@ -54,7 +54,7 @@ opts = OptionParser.new do |opt|
|
|
54
54
|
opt.on("-v", "--overlap NUMBER", "Minimum overlap with reference gene to tag a read as positive. By default: '#{ROCker.default :minovl}'."){ |v| o[:minovl]=v.to_f }
|
55
55
|
opt.on( "--genome-frx NUMBER", "Fraction to subsample the positive set genomes to generate the metagenome. By default: #{ROCker.default :genomefrx}"){ |v| o[:genomefrx]=v.to_f }
|
56
56
|
opt.on( "--per-taxon RANK", "If selected, only one genome per taxon is used to build the metagenome. Valid ranks include: species, genus, family, order, class, phylum.",
|
57
|
-
"This option replaces --per-genus and --per-species
|
57
|
+
"This option replaces --per-genus and --per-species from v0.1.*."){ |v| o[:pertaxon]=v.downcase }
|
58
58
|
opt.on( "--nometagenome", "Do not create metagenome. Implies --noblast. By default, metagenome is created."){ |v| o[:nomg]=v }
|
59
59
|
opt.on( "--noblast", "Do not execute BLAST. By default, BLAST is executed."){ |v| o[:noblast]=v }
|
60
60
|
opt.on( "--noalignment", "Do not align reference set. By default, references are aligned."){ |v| o[:noaln]=v }
|
data/lib/rocker.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
# @author Luis M. Rodriguez-R <lmrodriguezr at gmail dot com>
|
3
3
|
# @author Luis (Coto) Orellana
|
4
4
|
# @license artistic license 2.0
|
5
|
-
# @update May-
|
5
|
+
# @update May-14-2015
|
6
6
|
#
|
7
7
|
|
8
8
|
require 'rocker/blasthit'
|
@@ -18,7 +18,7 @@ class ROCker
|
|
18
18
|
:positive=>[], :negative=>[], :thr=>2,:genomefrx=>1.0,
|
19
19
|
# ext. software
|
20
20
|
:grinder=>'grinder', :muscle=>'muscle', :blastbins=>'', :seqdepth=>3, :minovl=>0.75,
|
21
|
-
:grindercmd=>'%1$s -reference_file "%2$s" -cf "%3$f" -base_name "%4$s" -dc \'-~*Nn\' -md "
|
21
|
+
:grindercmd=>'%1$s -reference_file "%2$s" -cf "%3$f" -base_name "%4$s" -dc \'-~*Nn\' -md "uniform 0.1" -mr "95 5" -rd "100 uniform 5"',
|
22
22
|
:musclecmd=>'%1$s -in "%2$s" -out "%3$s" -quiet',
|
23
23
|
:blastcmd=>'%1$s%2$s -query "%3$s" -db "%4$s" -out "%5$s" -num_threads %6$d -outfmt 6 -max_target_seqs 1',
|
24
24
|
:makedbcmd=>'%1$smakeblastdb -dbtype %2$s -in "%3$s" -out "%4$s"',
|
@@ -132,8 +132,10 @@ class ROCker
|
|
132
132
|
doc = res.split("\n").grep(/^[^#]/)
|
133
133
|
end
|
134
134
|
doc.each do |ln|
|
135
|
+
next if ln =~ /^#/
|
135
136
|
r = ln.chomp.split /\t/
|
136
|
-
|
137
|
+
next if r.size < 9
|
138
|
+
prots = r[8].split(/;/).grep(/^db_xref=UniProtKB[\/A-Za-z-]*:/){ |xref| xref.split(/:/)[1] }
|
137
139
|
p = prots.select{ |p| @o[:positive].include? p }.first
|
138
140
|
next if p.nil?
|
139
141
|
positive_coords[ r[0] ] ||= []
|
@@ -148,10 +150,12 @@ class ROCker
|
|
148
150
|
print "\n" unless @o[:q]
|
149
151
|
unless @o[:pertaxon].nil?
|
150
152
|
genome_ids[:positive] = genome_org.values
|
151
|
-
puts " Using #{genome_org.size}
|
153
|
+
puts " Using #{genome_org.size} genome(s) after filtering by #{@o[:pertaxon]}." unless @o[:q]
|
152
154
|
end
|
153
155
|
all_genome_ids = genome_ids.values.reduce(:+).uniq
|
154
|
-
|
156
|
+
found = positive_coords.values.map{ |a| a.map{ |b| b[:prot_id] } }.reduce(:+)
|
157
|
+
raise "Cannot find the genomic location of any provided sequence." if found.nil?
|
158
|
+
missing = @o[:positive] - found
|
155
159
|
warn "\nWARNING: Cannot find genomic location of sequence(s) #{missing.join(',')}.\n\n" unless missing.size==0 or @o[:genomefrx]<1.0 or not @o[:pertaxon].nil?
|
156
160
|
|
157
161
|
# Download genomes
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bio-rocker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luis (Coto) Orellana
|
@@ -56,9 +56,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
56
56
|
version: '0'
|
57
57
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - '
|
59
|
+
- - '>='
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: '0'
|
62
62
|
requirements: []
|
63
63
|
rubyforge_project:
|
64
64
|
rubygems_version: 2.0.14
|