lederhosen 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -6,13 +6,10 @@ gem 'thor', '0.16.0'
6
6
 
7
7
  group :test do
8
8
  gem 'rspec', '2.12.0'
9
- gem 'rspec-prof', '0.0.3'
10
9
  gem 'pry'
11
- # gem 'plymouth'
12
10
  end
13
11
 
14
12
  group :development do
15
13
  gem 'rdoc', '~> 3.12'
16
14
  gem 'jeweler', '1.8.4'
17
- gem 'ruby-prof', '0.11.2'
18
- end
15
+ end
data/lederhosen.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "lederhosen"
8
- s.version = "2.0.0"
8
+ s.version = "2.0.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Austin G. Davis-Richardson"]
12
- s.date = "2013-01-24"
12
+ s.date = "2013-01-25"
13
13
  s.description = "Various tools for OTU clustering"
14
14
  s.email = "harekrishna@gmail.com"
15
15
  s.executables = ["lederhosen"]
@@ -55,7 +55,7 @@ Gem::Specification.new do |s|
55
55
  s.homepage = "http://audy.github.com/lederhosen"
56
56
  s.licenses = ["MIT"]
57
57
  s.require_paths = ["lib"]
58
- s.rubygems_version = "1.8.23"
58
+ s.rubygems_version = "1.8.24"
59
59
  s.summary = "OTU Clustering"
60
60
 
61
61
  if s.respond_to? :specification_version then
@@ -67,14 +67,12 @@ Gem::Specification.new do |s|
67
67
  s.add_runtime_dependency(%q<thor>, ["= 0.16.0"])
68
68
  s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
69
69
  s.add_development_dependency(%q<jeweler>, ["= 1.8.4"])
70
- s.add_development_dependency(%q<ruby-prof>, ["= 0.11.2"])
71
70
  else
72
71
  s.add_dependency(%q<dna>, [">= 0"])
73
72
  s.add_dependency(%q<progressbar>, ["= 0.12.0"])
74
73
  s.add_dependency(%q<thor>, ["= 0.16.0"])
75
74
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
76
75
  s.add_dependency(%q<jeweler>, ["= 1.8.4"])
77
- s.add_dependency(%q<ruby-prof>, ["= 0.11.2"])
78
76
  end
79
77
  else
80
78
  s.add_dependency(%q<dna>, [">= 0"])
@@ -82,7 +80,6 @@ Gem::Specification.new do |s|
82
80
  s.add_dependency(%q<thor>, ["= 0.16.0"])
83
81
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
84
82
  s.add_dependency(%q<jeweler>, ["= 1.8.4"])
85
- s.add_dependency(%q<ruby-prof>, ["= 0.11.2"])
86
83
  end
87
84
  end
88
85
 
@@ -14,11 +14,11 @@ module Lederhosen
14
14
  end
15
15
 
16
16
  def hit?
17
- @source.type == 'H'
17
+ @source.hit_type == 'H'
18
18
  end
19
19
 
20
20
  def miss?
21
- @source.type == 'N'
21
+ @source.hit_type == 'N'
22
22
  end
23
23
  end
24
24
 
@@ -63,7 +63,7 @@ module Lederhosen
63
63
  str = str.split("\t")
64
64
 
65
65
  dat = {
66
- :type => str[0],
66
+ :hit_type => str[0],
67
67
  :cluster_no => str[1],
68
68
  :alignment => str[7],
69
69
  :query => str[8],
@@ -71,12 +71,12 @@ module Lederhosen
71
71
  }
72
72
 
73
73
  r =
74
- if dat[:type] =~ /[SNH]/ # hits
74
+ if dat[:hit_type] =~ /[SNH]/ # hits
75
75
  { :length => str[2].to_i,
76
76
  :identity => str[3],
77
77
  :strand => str[4],
78
78
  }
79
- elsif dat[:type] == 'C' # clusters
79
+ elsif dat[:hit_type] == 'C' # clusters
80
80
  { :cluster_size => str[2].to_i }
81
81
  else
82
82
  raise Exception, "Do not understand record type #{str[0]}!"
@@ -3,7 +3,7 @@ module Lederhosen
3
3
  MAJOR = 2
4
4
  MINOR = 0
5
5
  CODENAME = 'Schnittlauchbrot' # changes for minor versions
6
- PATCH = 0
6
+ PATCH = 1
7
7
 
8
8
  STRING = [MAJOR, MINOR, PATCH].join('.')
9
9
  end
data/readme.md CHANGED
@@ -13,10 +13,14 @@ Lederhosen is not a pipeline but rather a set of tools broken up into tasks. Tas
13
13
 
14
14
  Lederhosen is designed with the following "pipeline" in mind:
15
15
 
16
- 1. Clustering sequences to centroid or reference sequences (read: database)
16
+ 1. Clustering sequences to reference sequences (read: database) and/or _de novo_ OTU clustering.
17
+ - `lederhosen cluster ...`
17
18
  2. Generating tables from USEARCH output.
19
+ - `lederhosen count_taxonomies ...`
20
+ - `lederhosen otu_table ...`
18
21
  3. Filtering tables to remove small or insignificant OTUs.
19
- 4. Support for paired end reads (considers taxonomic assignment for both reads in a pair).
22
+ - `lederhosen otu_filter ...`
23
+
20
24
 
21
25
  ### About
22
26
 
@@ -33,6 +37,7 @@ using paired and non-paired end short reads such as those produced by Illumina (
33
37
  - Parallel support (pipe commands into [parallel](http://savannah.gnu.org/projects/parallel/), or use your cluster's queue).
34
38
  - Support for RDP, TaxCollector or GreenGenes 16S rRNA databases.
35
39
  - Generation and filtering of OTU abundancy matrices.
40
+ -. Support for paired end reads (considers taxonomic assignment for both reads in a pair).
36
41
 
37
42
  ### Installation
38
43
 
@@ -169,8 +174,6 @@ for filtered clusters will be moved to the `noise` psuedocluster.
169
174
 
170
175
  ### Get representative sequences
171
176
 
172
- (not yet implemented)
173
-
174
177
  You can get the representative sequences for each cluster using the `get_reps` tasks.
175
178
  This will extract the representative sequence from the __database__ you ran usearch with.
176
179
  Make sure you use the same database that you used when running usearch.
data/spec/cli_spec.rb CHANGED
@@ -33,11 +33,11 @@ describe Lederhosen::CLI do
33
33
  it 'can separate unclassified reads from usearch output' do
34
34
  `./bin/lederhosen separate_unclassified --uc-file=spec/data/test.uc --reads=spec/data/trimmed/ILT_L_9_B_001.fasta --output=#{$test_dir}/unclassified.fasta`
35
35
  $?.success?.should be_true
36
- unclassified_results = File.readlines("spec/data/test.uc")
37
- .select { |x| x =~ /^N/ }
36
+ unclassified_results = File.readlines("spec/data/test.uc")\
37
+ .select { |x| x =~ /^N/ }\
38
38
  .size
39
- unclassified_reads = File.readlines("#{$test_dir}/unclassified.fasta")
40
- .select { |x| x =~ /^>/ }
39
+ unclassified_reads = File.readlines("#{$test_dir}/unclassified.fasta")\
40
+ .select { |x| x =~ /^>/ }\
41
41
  .size
42
42
 
43
43
  unclassified_results.should == unclassified_reads
@@ -46,8 +46,8 @@ describe Lederhosen::CLI do
46
46
  it 'can separate unclassified reads from usearch output using strict pairing' do
47
47
  `./bin/lederhosen separate_unclassified --strict=genus --uc-file=spec/data/test.uc --reads=spec/data/trimmed/ILT_L_9_B_001.fasta --output=#{$test_dir}/unclassified.strict_genus.fasta`
48
48
  $?.success?.should be_true
49
- File.readlines("#{$test_dir}/unclassified.strict_genus.fasta")
50
- .select { |x| x =~ /^>/ }
49
+ File.readlines("#{$test_dir}/unclassified.strict_genus.fasta")\
50
+ .select { |x| x =~ /^>/ }\
51
51
  .size.should be_even
52
52
  end
53
53
 
@@ -58,10 +58,10 @@ describe Lederhosen::CLI do
58
58
  end
59
59
 
60
60
  it 'generates taxonomy tables w/ comma-free taxonomic descriptions' do
61
- File.readlines(File.join($test_dir, 'taxonomy_count.txt'))
62
- .map(&:strip)
63
- .map { |x| x.count(',') }
64
- .uniq
61
+ File.readlines(File.join($test_dir, 'taxonomy_count.txt'))\
62
+ .map(&:strip)\
63
+ .map { |x| x.count(',') }\
64
+ .uniq\
65
65
  .should == [1]
66
66
  end
67
67
 
@@ -74,11 +74,11 @@ describe Lederhosen::CLI do
74
74
 
75
75
  # make sure total number of reads is even
76
76
  # requires that there should be an odd number if classification is not strict
77
- lines.select { |x| !(x =~ /^#/) }
78
- .map(&:strip)
79
- .map { |x| x.split(',') }
80
- .map(&:last)
81
- .map(&:to_i)
77
+ lines.select { |x| !(x =~ /^#/) }\
78
+ .map(&:strip)\
79
+ .map { |x| x.split(',') }\
80
+ .map(&:last)\
81
+ .map(&:to_i)\
82
82
  .inject(:+).should be_even
83
83
  end
84
84
  end
metadata CHANGED
@@ -1,120 +1,108 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: lederhosen
3
- version: !ruby/object:Gem::Version
4
- version: 2.0.0
3
+ version: !ruby/object:Gem::Version
4
+ hash: 13
5
5
  prerelease:
6
+ segments:
7
+ - 2
8
+ - 0
9
+ - 1
10
+ version: 2.0.1
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Austin G. Davis-Richardson
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2013-01-24 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: dna
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '0'
22
- type: :runtime
17
+
18
+ date: 2013-01-25 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
23
21
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
22
+ requirement: &id001 !ruby/object:Gem::Requirement
25
23
  none: false
26
- requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
29
- version: '0'
30
- - !ruby/object:Gem::Dependency
31
- name: progressbar
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - '='
36
- - !ruby/object:Gem::Version
37
- version: 0.12.0
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ hash: 3
28
+ segments:
29
+ - 0
30
+ version: "0"
38
31
  type: :runtime
32
+ name: dna
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
39
35
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
36
+ requirement: &id002 !ruby/object:Gem::Requirement
41
37
  none: false
42
- requirements:
43
- - - '='
44
- - !ruby/object:Gem::Version
38
+ requirements:
39
+ - - "="
40
+ - !ruby/object:Gem::Version
41
+ hash: 47
42
+ segments:
43
+ - 0
44
+ - 12
45
+ - 0
45
46
  version: 0.12.0
46
- - !ruby/object:Gem::Dependency
47
- name: thor
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - '='
52
- - !ruby/object:Gem::Version
53
- version: 0.16.0
54
47
  type: :runtime
48
+ name: progressbar
49
+ version_requirements: *id002
50
+ - !ruby/object:Gem::Dependency
55
51
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
52
+ requirement: &id003 !ruby/object:Gem::Requirement
57
53
  none: false
58
- requirements:
59
- - - '='
60
- - !ruby/object:Gem::Version
54
+ requirements:
55
+ - - "="
56
+ - !ruby/object:Gem::Version
57
+ hash: 95
58
+ segments:
59
+ - 0
60
+ - 16
61
+ - 0
61
62
  version: 0.16.0
62
- - !ruby/object:Gem::Dependency
63
- name: rdoc
64
- requirement: !ruby/object:Gem::Requirement
65
- none: false
66
- requirements:
67
- - - ~>
68
- - !ruby/object:Gem::Version
69
- version: '3.12'
70
- type: :development
63
+ type: :runtime
64
+ name: thor
65
+ version_requirements: *id003
66
+ - !ruby/object:Gem::Dependency
71
67
  prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
68
+ requirement: &id004 !ruby/object:Gem::Requirement
73
69
  none: false
74
- requirements:
70
+ requirements:
75
71
  - - ~>
76
- - !ruby/object:Gem::Version
77
- version: '3.12'
78
- - !ruby/object:Gem::Dependency
79
- name: jeweler
80
- requirement: !ruby/object:Gem::Requirement
81
- none: false
82
- requirements:
83
- - - '='
84
- - !ruby/object:Gem::Version
85
- version: 1.8.4
72
+ - !ruby/object:Gem::Version
73
+ hash: 31
74
+ segments:
75
+ - 3
76
+ - 12
77
+ version: "3.12"
86
78
  type: :development
79
+ name: rdoc
80
+ version_requirements: *id004
81
+ - !ruby/object:Gem::Dependency
87
82
  prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
83
+ requirement: &id005 !ruby/object:Gem::Requirement
89
84
  none: false
90
- requirements:
91
- - - '='
92
- - !ruby/object:Gem::Version
85
+ requirements:
86
+ - - "="
87
+ - !ruby/object:Gem::Version
88
+ hash: 63
89
+ segments:
90
+ - 1
91
+ - 8
92
+ - 4
93
93
  version: 1.8.4
94
- - !ruby/object:Gem::Dependency
95
- name: ruby-prof
96
- requirement: !ruby/object:Gem::Requirement
97
- none: false
98
- requirements:
99
- - - '='
100
- - !ruby/object:Gem::Version
101
- version: 0.11.2
102
94
  type: :development
103
- prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
- requirements:
107
- - - '='
108
- - !ruby/object:Gem::Version
109
- version: 0.11.2
95
+ name: jeweler
96
+ version_requirements: *id005
110
97
  description: Various tools for OTU clustering
111
98
  email: harekrishna@gmail.com
112
- executables:
99
+ executables:
113
100
  - lederhosen
114
101
  extensions: []
115
- extra_rdoc_files:
102
+
103
+ extra_rdoc_files:
116
104
  - LICENSE.txt
117
- files:
105
+ files:
118
106
  - .rspec
119
107
  - Gemfile
120
108
  - LICENSE.txt
@@ -150,31 +138,37 @@ files:
150
138
  - spec/spec_helper.rb
151
139
  - spec/uc_parser_spec.rb
152
140
  homepage: http://audy.github.com/lederhosen
153
- licenses:
141
+ licenses:
154
142
  - MIT
155
143
  post_install_message:
156
144
  rdoc_options: []
157
- require_paths:
145
+
146
+ require_paths:
158
147
  - lib
159
- required_ruby_version: !ruby/object:Gem::Requirement
148
+ required_ruby_version: !ruby/object:Gem::Requirement
160
149
  none: false
161
- requirements:
162
- - - ! '>='
163
- - !ruby/object:Gem::Version
164
- version: '0'
165
- segments:
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ hash: 3
154
+ segments:
166
155
  - 0
167
- hash: -4054085501911268272
168
- required_rubygems_version: !ruby/object:Gem::Requirement
156
+ version: "0"
157
+ required_rubygems_version: !ruby/object:Gem::Requirement
169
158
  none: false
170
- requirements:
171
- - - ! '>='
172
- - !ruby/object:Gem::Version
173
- version: '0'
159
+ requirements:
160
+ - - ">="
161
+ - !ruby/object:Gem::Version
162
+ hash: 3
163
+ segments:
164
+ - 0
165
+ version: "0"
174
166
  requirements: []
167
+
175
168
  rubyforge_project:
176
- rubygems_version: 1.8.23
169
+ rubygems_version: 1.8.24
177
170
  signing_key:
178
171
  specification_version: 3
179
172
  summary: OTU Clustering
180
173
  test_files: []
174
+