bio-samtools 0.4.2 → 0.5.0

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 (45) hide show
  1. data/Gemfile.lock +1 -0
  2. data/README.rdoc +1 -0
  3. data/VERSION +1 -1
  4. data/bio-samtools.gemspec +19 -19
  5. data/doc/Bio.html +71 -4
  6. data/doc/Bio/DB.html +6 -4
  7. data/doc/Bio/DB/Alignment.html +8 -8
  8. data/doc/Bio/DB/Pileup.html +515 -0
  9. data/doc/Bio/DB/SAM.html +37 -37
  10. data/doc/Bio/DB/SAM/Library.html +4 -4
  11. data/doc/Bio/DB/SAM/Tools.html +4 -4
  12. data/doc/Bio/DB/SAM/Tools/Bam1CoreT.html +4 -4
  13. data/doc/Bio/DB/SAM/Tools/Bam1T.html +4 -4
  14. data/doc/Bio/DB/SAM/Tools/BamHeaderT.html +4 -4
  15. data/doc/Bio/DB/SAM/Tools/BamPileup1T.html +4 -4
  16. data/doc/Bio/DB/SAM/Tools/SamfileT.html +4 -4
  17. data/doc/Bio/DB/SAM/Tools/SamfileTX.html +4 -4
  18. data/doc/Bio/DB/SAMException.html +5 -5
  19. data/doc/Bio/DB/Tag.html +5 -5
  20. data/doc/Bio/DB/Vcf.html +467 -0
  21. data/doc/LICENSE_txt.html +57 -60
  22. data/doc/LibC.html +6 -4
  23. data/doc/created.rid +7 -7
  24. data/doc/index.html +4 -4
  25. data/doc/js/search_index.js +1 -1
  26. data/doc/lib/bio-samtools_rb.html +4 -4
  27. data/doc/lib/bio/db/pileup_rb.html +171 -0
  28. data/doc/lib/bio/db/sam/bam_rb.html +4 -4
  29. data/doc/lib/bio/db/sam/faidx_rb.html +4 -4
  30. data/doc/lib/bio/db/sam/library_rb.html +4 -4
  31. data/doc/lib/bio/db/sam/sam_rb.html +4 -4
  32. data/doc/lib/bio/db/sam_rb.html +4 -4
  33. data/doc/lib/bio/db/vcf_rb.html +124 -0
  34. data/doc/table_of_contents.html +16 -26
  35. data/doc/tutorial.html +26 -1
  36. data/doc/tutorial.pdf +0 -0
  37. data/lib/bio/db/{sam/pileup.rb → pileup.rb} +6 -4
  38. data/lib/bio/db/sam.rb +13 -12
  39. data/lib/bio/db/{sam/vcf.rb → vcf.rb} +6 -2
  40. data/test/samples/small/sorted.bam.bai +0 -0
  41. data/test/test_basic.rb +7 -5
  42. data/test/test_vcf.rb +5 -5
  43. metadata +29 -26
  44. data/test/basictest.rb +0 -322
  45. data/test/pileup.rb +0 -68
data/Gemfile.lock CHANGED
@@ -10,6 +10,7 @@ GEM
10
10
  git (>= 1.2.5)
11
11
  rake
12
12
  json (1.6.1)
13
+ json (1.6.1-java)
13
14
  rake (0.9.2.2)
14
15
  rcov (0.9.9)
15
16
  rcov (0.9.9-java)
data/README.rdoc CHANGED
@@ -42,6 +42,7 @@ I´m getting a segmentation Fault, what did I do wrong?
42
42
  I keep seeing this "Invalid gemspec in [some ruby gem path...]", what is wrong?
43
43
  - This appears to be a bug in RubyGems that doesn't affect the running of the tools. It will keep happening until someone updates RubyGems. If it really bugs you, downgrade RubyGems.
44
44
 
45
+
45
46
  To whom do I complain?
46
47
  -about bio-samtools? Try
47
48
  Ricardo dot Ramirez-Gonzalez at tgac dot ac dot uk
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.2
1
+ 0.5.0
data/bio-samtools.gemspec CHANGED
@@ -4,18 +4,15 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{bio-samtools}
8
- s.version = "0.4.2"
7
+ s.name = "bio-samtools"
8
+ s.version = "0.5.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = [%q{Ricardo Ramirez-Gonzalez}, %q{Dan MacLean}, %q{Raoul J.P. Bonnal}]
12
- s.date = %q{2011-11-10}
13
- s.description = %q{Binder of samtools for ruby, on the top of FFI.
14
-
15
- This project was born from the need to add support of BAM files to
16
- the gee_fu genome browser (http://github.com/danmaclean/gee_fu).}
17
- s.email = %q{ilpuccio.febo@gmail.com}
18
- s.extensions = [%q{ext/mkrf_conf.rb}]
11
+ s.authors = ["Ricardo Ramirez-Gonzalez", "Dan MacLean", "Raoul J.P. Bonnal"]
12
+ s.date = "2012-01-13"
13
+ s.description = "Binder of samtools for ruby, on the top of FFI. \n\n This project was born from the need to add support of BAM files to \n the gee_fu genome browser (http://github.com/danmaclean/gee_fu)."
14
+ s.email = "ilpuccio.febo@gmail.com"
15
+ s.extensions = ["ext/mkrf_conf.rb"]
19
16
  s.extra_rdoc_files = [
20
17
  "LICENSE.txt",
21
18
  "README.rdoc"
@@ -32,6 +29,7 @@ Gem::Specification.new do |s|
32
29
  "doc/Bio.html",
33
30
  "doc/Bio/DB.html",
34
31
  "doc/Bio/DB/Alignment.html",
32
+ "doc/Bio/DB/Pileup.html",
35
33
  "doc/Bio/DB/SAM.html",
36
34
  "doc/Bio/DB/SAM/Library.html",
37
35
  "doc/Bio/DB/SAM/Tools.html",
@@ -43,6 +41,7 @@ Gem::Specification.new do |s|
43
41
  "doc/Bio/DB/SAM/Tools/SamfileTX.html",
44
42
  "doc/Bio/DB/SAMException.html",
45
43
  "doc/Bio/DB/Tag.html",
44
+ "doc/Bio/DB/Vcf.html",
46
45
  "doc/LICENSE_txt.html",
47
46
  "doc/LibC.html",
48
47
  "doc/Pileup.html",
@@ -139,6 +138,7 @@ Gem::Specification.new do |s|
139
138
  "doc/js/search_index.js",
140
139
  "doc/js/searcher.js",
141
140
  "doc/lib/bio-samtools_rb.html",
141
+ "doc/lib/bio/db/pileup_rb.html",
142
142
  "doc/lib/bio/db/sam/bam_rb.html",
143
143
  "doc/lib/bio/db/sam/faidx_rb.html",
144
144
  "doc/lib/bio/db/sam/library_rb.html",
@@ -146,6 +146,7 @@ Gem::Specification.new do |s|
146
146
  "doc/lib/bio/db/sam/sam_rb.html",
147
147
  "doc/lib/bio/db/sam/vcf_rb.html",
148
148
  "doc/lib/bio/db/sam_rb.html",
149
+ "doc/lib/bio/db/vcf_rb.html",
149
150
  "doc/rdoc-style.css",
150
151
  "doc/rdoc.css",
151
152
  "doc/table_of_contents.html",
@@ -156,20 +157,19 @@ Gem::Specification.new do |s|
156
157
  "ext/mkrf_conf.rb",
157
158
  "lib/bio-samtools.rb",
158
159
  "lib/bio/.DS_Store",
160
+ "lib/bio/db/pileup.rb",
159
161
  "lib/bio/db/sam.rb",
160
162
  "lib/bio/db/sam/bam.rb",
161
163
  "lib/bio/db/sam/external/COPYING",
162
164
  "lib/bio/db/sam/external/VERSION",
163
165
  "lib/bio/db/sam/faidx.rb",
164
166
  "lib/bio/db/sam/library.rb",
165
- "lib/bio/db/sam/pileup.rb",
166
167
  "lib/bio/db/sam/sam.rb",
167
- "lib/bio/db/sam/vcf.rb",
168
- "test/basictest.rb",
168
+ "lib/bio/db/vcf.rb",
169
169
  "test/helper.rb",
170
- "test/pileup.rb",
171
170
  "test/samples/small/ids2.txt",
172
171
  "test/samples/small/sorted.bam",
172
+ "test/samples/small/sorted.bam.bai",
173
173
  "test/samples/small/test",
174
174
  "test/samples/small/test.bam",
175
175
  "test/samples/small/test.fa",
@@ -191,11 +191,11 @@ Gem::Specification.new do |s|
191
191
  "test/test_bio-samtools.rb",
192
192
  "test/test_vcf.rb"
193
193
  ]
194
- s.homepage = %q{http://github.com/helios/bioruby-samtools}
195
- s.licenses = [%q{MIT}]
196
- s.require_paths = [%q{lib}]
197
- s.rubygems_version = %q{1.8.6}
198
- s.summary = %q{Binder of samtools for ruby, on the top of FFI.}
194
+ s.homepage = "http://github.com/helios/bioruby-samtools"
195
+ s.licenses = ["MIT"]
196
+ s.require_paths = ["lib"]
197
+ s.rubygems_version = "1.8.10"
198
+ s.summary = "Binder of samtools for ruby, on the top of FFI."
199
199
 
200
200
  if s.respond_to? :specification_version then
201
201
  s.specification_version = 3
data/doc/Bio.html CHANGED
@@ -47,11 +47,13 @@
47
47
  <nav id="file-list-section" class="section">
48
48
  <h3 class="section-header">Defined In</h3>
49
49
  <ul>
50
+ <li>lib/bio/db/pileup.rb
50
51
  <li>lib/bio/db/sam/bam.rb
51
52
  <li>lib/bio/db/sam/faidx.rb
52
53
  <li>lib/bio/db/sam/library.rb
53
54
  <li>lib/bio/db/sam/sam.rb
54
55
  <li>lib/bio/db/sam.rb
56
+ <li>lib/bio/db/vcf.rb
55
57
  </ul>
56
58
  </nav>
57
59
 
@@ -87,6 +89,8 @@
87
89
 
88
90
  <li><a href="./Bio/DB/Alignment.html">Bio::DB::Alignment</a>
89
91
 
92
+ <li><a href="./Bio/DB/Pileup.html">Bio::DB::Pileup</a>
93
+
90
94
  <li><a href="./Bio/DB/SAM.html">Bio::DB::SAM</a>
91
95
 
92
96
  <li><a href="./Bio/DB/SAM/Library.html">Bio::DB::SAM::Library</a>
@@ -111,11 +115,9 @@
111
115
 
112
116
  <li><a href="./Bio/DB/Tag.html">Bio::DB::Tag</a>
113
117
 
114
- <li><a href="./LibC.html">LibC</a>
115
-
116
- <li><a href="./Pileup.html">Pileup</a>
118
+ <li><a href="./Bio/DB/Vcf.html">Bio::DB::Vcf</a>
117
119
 
118
- <li><a href="./Vcf.html">Vcf</a>
120
+ <li><a href="./LibC.html">LibC</a>
119
121
 
120
122
  </ul>
121
123
  </nav>
@@ -128,6 +130,62 @@
128
130
 
129
131
  <div id="description" class="description">
130
132
 
133
+ <h1 id="label-Bio%3A%3ADB%3A%3APileup+"><a href="Bio/DB/Pileup.html">Bio::DB::Pileup</a> </h1>
134
+
135
+ <p>A class representing information in SAMTools pileup format</p>
136
+ <dl class="rdoc-list note-list"><dt>Author
137
+ <dd>
138
+ <p>Dan MacLean (tsl at dan.maclean.ac.uk)</p>
139
+ </dd></dl>
140
+
141
+ <p>Pileup is described at <a
142
+ href="http://sourceforge.net/apps/mediawiki/samtools/index.php?title=SAM_FAQ#I_do_not_understand_the_columns_in_the_pileup_output">sourceforge.net/apps/mediawiki/samtools/index.php?title=SAM_FAQ#I_do_not_understand_the_columns_in_the_pileup_output</a>.
143
+ Briefly (when you invoke pileup with the -c option):</p>
144
+ <ul><li>
145
+ <p>1 reference sequence name</p>
146
+ </li><li>
147
+ <p>2 reference coordinate</p>
148
+ </li><li>
149
+ <p>(3) reference base, or `*‘ for an indel line</p>
150
+ </li><li>
151
+ <p>(4) genotype where heterozygotes are encoded in the IUB code: M=A/C, R=A/G,
152
+ W=A/T, S=C/G, Y=C/T and K=G/T; indels are indicated by, for example, +A,
153
+ -A or +CC/-C. There is no difference between */+A or +A/*.</p>
154
+ </li><li>
155
+ <p>(5) Phred-scaled likelihood that the genotype is wrong, which is also
156
+ called `consensus quality’.</p>
157
+ </li><li>
158
+ <p>(6) Phred-scaled likelihood that the genotype is identical to the
159
+ reference, which is also called `SNP quality’. Suppose the reference base
160
+ is A and in alignment we see 17 G and 3 A. We will get a low consensus
161
+ quality because it is difficult to distinguish an A/G heterozygote from a
162
+ G/G homozygote. We will get a high SNP quality, though, because the
163
+ evidence of a SNP is very strong.</p>
164
+ </li><li>
165
+ <p>(7) root mean square (RMS) mapping quality</p>
166
+ </li><li>
167
+ <p>8 # reads covering the position</p>
168
+ </li><li>
169
+ <p>9 read bases at a SNP line (check the manual page for more information);
170
+ the 1st indel allele otherwise</p>
171
+ </li><li>
172
+ <p>10 base quality at a SNP line; the 2nd indel allele otherwise</p>
173
+ </li><li>
174
+ <p>(11) indel line only: # reads directly supporting the 1st indel allele</p>
175
+ </li><li>
176
+ <p>(12) indel line only: # reads directly supporting the 2nd indel allele</p>
177
+ </li><li>
178
+ <p>(13) indel line only: # reads supporting a third indel allele</p>
179
+ </li></ul>
180
+
181
+ <p>If pileup is invoked without `-c’, indel lines and columns between 3 and 7
182
+ inclusive will not be outputted.</p>
183
+
184
+ <p>NB mpileup uses the 6 column output format eg
185
+ “seq2t151tGtGt36t0t99t12t.….……At:9&lt;;;7=&lt;&lt;&lt;&lt;&lt;” Pileup
186
+ provides accessors for all columns (6 or 10 column format) and a few other
187
+ useful methods</p>
188
+
131
189
  <p>require ‘rubygems’ require ‘ffi’</p>
132
190
 
133
191
  <pre class="ruby"><span class="ruby-identifier">require</span> <span class="ruby-string">'bio/db/sam/faidx'</span>
@@ -142,6 +200,15 @@ Created by Ricardo Ramirez on 3/25/10.</pre>
142
200
 
143
201
  <p>require ‘rubygems’ require’ffi’ require ‘bio/db/sam/bam’</p>
144
202
 
203
+ <h1 id="label-Vcf+">Vcf </h1>
204
+
205
+ <p>A class representing information in Variant Call Format Forked from vcfruby
206
+ at <a
207
+ href="https://github.com/jesserod/vcfruby">github.com/jesserod/vcfruby</a>
208
+ Modified and tests written by Dan MacLean (tsl at dan.maclean.ac.uk) VCF is
209
+ described at <a
210
+ href="http://www.1000genomes.org/node/101">www.1000genomes.org/node/101</a></p>
211
+
145
212
  </div><!-- description -->
146
213
 
147
214
 
data/doc/Bio/DB.html CHANGED
@@ -47,11 +47,13 @@
47
47
  <nav id="file-list-section" class="section">
48
48
  <h3 class="section-header">Defined In</h3>
49
49
  <ul>
50
+ <li>lib/bio/db/pileup.rb
50
51
  <li>lib/bio/db/sam/bam.rb
51
52
  <li>lib/bio/db/sam/faidx.rb
52
53
  <li>lib/bio/db/sam/library.rb
53
54
  <li>lib/bio/db/sam/sam.rb
54
55
  <li>lib/bio/db/sam.rb
56
+ <li>lib/bio/db/vcf.rb
55
57
  </ul>
56
58
  </nav>
57
59
 
@@ -93,6 +95,8 @@
93
95
 
94
96
  <li><a href="../Bio/DB/Alignment.html">Bio::DB::Alignment</a>
95
97
 
98
+ <li><a href="../Bio/DB/Pileup.html">Bio::DB::Pileup</a>
99
+
96
100
  <li><a href="../Bio/DB/SAM.html">Bio::DB::SAM</a>
97
101
 
98
102
  <li><a href="../Bio/DB/SAM/Library.html">Bio::DB::SAM::Library</a>
@@ -117,11 +121,9 @@
117
121
 
118
122
  <li><a href="../Bio/DB/Tag.html">Bio::DB::Tag</a>
119
123
 
120
- <li><a href="../LibC.html">LibC</a>
121
-
122
- <li><a href="../Pileup.html">Pileup</a>
124
+ <li><a href="../Bio/DB/Vcf.html">Bio::DB::Vcf</a>
123
125
 
124
- <li><a href="../Vcf.html">Vcf</a>
126
+ <li><a href="../LibC.html">LibC</a>
125
127
 
126
128
  </ul>
127
129
  </nav>
@@ -105,6 +105,8 @@
105
105
 
106
106
  <li><a href="../../Bio/DB/Alignment.html">Bio::DB::Alignment</a>
107
107
 
108
+ <li><a href="../../Bio/DB/Pileup.html">Bio::DB::Pileup</a>
109
+
108
110
  <li><a href="../../Bio/DB/SAM.html">Bio::DB::SAM</a>
109
111
 
110
112
  <li><a href="../../Bio/DB/SAM/Library.html">Bio::DB::SAM::Library</a>
@@ -129,11 +131,9 @@
129
131
 
130
132
  <li><a href="../../Bio/DB/Tag.html">Bio::DB::Tag</a>
131
133
 
132
- <li><a href="../../LibC.html">LibC</a>
133
-
134
- <li><a href="../../Pileup.html">Pileup</a>
134
+ <li><a href="../../Bio/DB/Vcf.html">Bio::DB::Vcf</a>
135
135
 
136
- <li><a href="../../Vcf.html">Vcf</a>
136
+ <li><a href="../../LibC.html">LibC</a>
137
137
 
138
138
  </ul>
139
139
  </nav>
@@ -595,7 +595,7 @@ for clarity. primary is the negation of is_negative from the BAM format</p>
595
595
 
596
596
 
597
597
  <div class="method-source-code" id="finalize-source">
598
- <pre><span class="ruby-comment"># File lib/bio/db/sam.rb, line 553</span>
598
+ <pre><span class="ruby-comment"># File lib/bio/db/sam.rb, line 554</span>
599
599
  <span class="ruby-keyword">def</span> <span class="ruby-constant">Alignment</span>.<span class="ruby-identifier">finalize</span>(<span class="ruby-identifier">object_id</span>)
600
600
 
601
601
  <span class="ruby-comment"># puts &quot;Object #{object_id} dying at #{Time.new}&quot;</span>
@@ -634,7 +634,7 @@ for clarity. primary is the negation of is_negative from the BAM format</p>
634
634
 
635
635
 
636
636
  <div class="method-source-code" id="new-source">
637
- <pre><span class="ruby-comment"># File lib/bio/db/sam.rb, line 549</span>
637
+ <pre><span class="ruby-comment"># File lib/bio/db/sam.rb, line 550</span>
638
638
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
639
639
  <span class="ruby-constant">ObjectSpace</span>.<span class="ruby-identifier">define_finalizer</span>(<span class="ruby-keyword">self</span>,
640
640
  <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">method</span>(<span class="ruby-value">:finalize</span>).<span class="ruby-identifier">to_proc</span>)
@@ -671,7 +671,7 @@ for clarity. primary is the negation of is_negative from the BAM format</p>
671
671
 
672
672
 
673
673
  <div class="method-source-code" id="sam-3D-source">
674
- <pre><span class="ruby-comment"># File lib/bio/db/sam.rb, line 607</span>
674
+ <pre><span class="ruby-comment"># File lib/bio/db/sam.rb, line 608</span>
675
675
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">sam=</span>(<span class="ruby-identifier">sam</span>)
676
676
  <span class="ruby-comment">#p sam</span>
677
677
  <span class="ruby-identifier">s</span> = <span class="ruby-identifier">sam</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&quot;\t&quot;</span>)
@@ -724,7 +724,7 @@ for clarity. primary is the negation of is_negative from the BAM format</p>
724
724
 
725
725
 
726
726
  <div class="method-source-code" id="set-source">
727
- <pre><span class="ruby-comment"># File lib/bio/db/sam.rb, line 575</span>
727
+ <pre><span class="ruby-comment"># File lib/bio/db/sam.rb, line 576</span>
728
728
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">set</span>(<span class="ruby-identifier">bam_alignment</span>, <span class="ruby-identifier">header</span>)
729
729
  <span class="ruby-comment">#Create the FFI object</span>
730
730
  <span class="ruby-ivar">@al</span> = <span class="ruby-constant">Bio</span><span class="ruby-operator">::</span><span class="ruby-constant">DB</span><span class="ruby-operator">::</span><span class="ruby-constant">SAM</span><span class="ruby-operator">::</span><span class="ruby-constant">Tools</span><span class="ruby-operator">::</span><span class="ruby-constant">Bam1T</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">bam_alignment</span>)
@@ -0,0 +1,515 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
6
+
7
+ <title>Class: Bio::DB::Pileup</title>
8
+
9
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet">
10
+
11
+ <script type="text/javascript">
12
+ var rdoc_rel_prefix = "../../";
13
+ </script>
14
+
15
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
16
+ <script type="text/javascript" charset="utf-8" src="../../js/navigation.js"></script>
17
+ <script type="text/javascript" charset="utf-8" src="../../js/search_index.js"></script>
18
+ <script type="text/javascript" charset="utf-8" src="../../js/search.js"></script>
19
+ <script type="text/javascript" charset="utf-8" src="../../js/searcher.js"></script>
20
+ <script type="text/javascript" charset="utf-8" src="../../js/darkfish.js"></script>
21
+
22
+
23
+ <body id="top" class="class">
24
+ <nav id="metadata">
25
+ <nav id="home-section" class="section">
26
+ <h3 class="section-header">
27
+ <a href="../../index.html">Home</a>
28
+ <a href="../../table_of_contents.html#classes">Classes</a>
29
+ <a href="../../table_of_contents.html#methods">Methods</a>
30
+ </h3>
31
+ </nav>
32
+
33
+
34
+ <nav id="search-section" class="section project-section" class="initially-hidden">
35
+ <form action="#" method="get" accept-charset="utf-8">
36
+ <h3 class="section-header">
37
+ <input type="text" name="search" placeholder="Search" id="search-field"
38
+ title="Type to search, Up and Down to navigate, Enter to load">
39
+ </h3>
40
+ </form>
41
+
42
+ <ul id="search-results" class="initially-hidden"></ul>
43
+ </nav>
44
+
45
+
46
+ <div id="file-metadata">
47
+ <nav id="file-list-section" class="section">
48
+ <h3 class="section-header">Defined In</h3>
49
+ <ul>
50
+ <li>lib/bio/db/pileup.rb
51
+ </ul>
52
+ </nav>
53
+
54
+
55
+ </div>
56
+
57
+ <div id="class-metadata">
58
+
59
+ <nav id="parent-class-section" class="section">
60
+ <h3 class="section-header">Parent</h3>
61
+
62
+ <p class="link">Object
63
+
64
+ </nav>
65
+
66
+
67
+ <!-- Method Quickref -->
68
+ <nav id="method-list-section" class="section">
69
+ <h3 class="section-header">Methods</h3>
70
+
71
+ <ul class="link-list">
72
+
73
+ <li><a href="#method-c-new">::new</a>
74
+
75
+ <li><a href="#method-i-non_ref_count">#non_ref_count</a>
76
+
77
+ <li><a href="#method-i-non_refs">#non_refs</a>
78
+
79
+ <li><a href="#method-i-ref_count">#ref_count</a>
80
+
81
+ </ul>
82
+ </nav>
83
+
84
+ </div>
85
+
86
+ <div id="project-metadata">
87
+ <nav id="fileindex-section" class="section project-section">
88
+ <h3 class="section-header">Pages</h3>
89
+
90
+ <ul>
91
+
92
+ <li class="file"><a href="../../LICENSE_txt.html">LICENSE</a>
93
+
94
+ </ul>
95
+ </nav>
96
+
97
+ <nav id="classindex-section" class="section project-section">
98
+ <h3 class="section-header">Class and Module Index</h3>
99
+
100
+ <ul class="link-list">
101
+
102
+ <li><a href="../../Bio.html">Bio</a>
103
+
104
+ <li><a href="../../Bio/DB.html">Bio::DB</a>
105
+
106
+ <li><a href="../../Bio/DB/Alignment.html">Bio::DB::Alignment</a>
107
+
108
+ <li><a href="../../Bio/DB/Pileup.html">Bio::DB::Pileup</a>
109
+
110
+ <li><a href="../../Bio/DB/SAM.html">Bio::DB::SAM</a>
111
+
112
+ <li><a href="../../Bio/DB/SAM/Library.html">Bio::DB::SAM::Library</a>
113
+
114
+ <li><a href="../../Bio/DB/SAM/Tools.html">Bio::DB::SAM::Tools</a>
115
+
116
+ <li><a href="../../Bio/DB/SAM/Tools/Bam1CoreT.html">Bio::DB::SAM::Tools::Bam1CoreT</a>
117
+
118
+ <li><a href="../../Bio/DB/SAM/Tools/Bam1T.html">Bio::DB::SAM::Tools::Bam1T</a>
119
+
120
+ <li><a href="../../Bio/DB/SAM/Tools/BamHeaderT.html">Bio::DB::SAM::Tools::BamHeaderT</a>
121
+
122
+ <li><a href="../../Bio/DB/SAM/Tools/BamPileup1T.html">Bio::DB::SAM::Tools::BamPileup1T</a>
123
+
124
+ <li><a href="../../Bio/DB/SAM/Tools/SamfileT.html">Bio::DB::SAM::Tools::SamfileT</a>
125
+
126
+ <li><a href="../../Bio/DB/SAM/Tools/SamfileTX.html">Bio::DB::SAM::Tools::SamfileTX</a>
127
+
128
+ <li><a href="../../Bio/DB/SAMException.html">Bio::DB::SAMException</a>
129
+
130
+ <li><a href="../../Bio/DB/Sam.html">Bio::DB::Sam</a>
131
+
132
+ <li><a href="../../Bio/DB/Tag.html">Bio::DB::Tag</a>
133
+
134
+ <li><a href="../../Bio/DB/Vcf.html">Bio::DB::Vcf</a>
135
+
136
+ <li><a href="../../LibC.html">LibC</a>
137
+
138
+ </ul>
139
+ </nav>
140
+
141
+ </div>
142
+ </nav>
143
+
144
+ <div id="documentation">
145
+ <h1 class="class">class Bio::DB::Pileup</h1>
146
+
147
+ <div id="description" class="description">
148
+
149
+ </div><!-- description -->
150
+
151
+
152
+
153
+
154
+ <section id="5Buntitled-5D" class="documentation-section">
155
+
156
+
157
+
158
+
159
+
160
+
161
+
162
+ <!-- Attributes -->
163
+ <section id="attribute-method-details" class="method-section section">
164
+ <h3 class="section-header">Attributes</h3>
165
+
166
+
167
+ <div id="attribute-i-ar1" class="method-detail">
168
+ <div class="method-heading attribute-method-heading">
169
+ <span class="method-name">ar1</span><span
170
+ class="attribute-access-type">[RW]</span>
171
+ </div>
172
+
173
+ <div class="method-description">
174
+
175
+
176
+
177
+ </div>
178
+ </div>
179
+
180
+ <div id="attribute-i-ar2" class="method-detail">
181
+ <div class="method-heading attribute-method-heading">
182
+ <span class="method-name">ar2</span><span
183
+ class="attribute-access-type">[RW]</span>
184
+ </div>
185
+
186
+ <div class="method-description">
187
+
188
+
189
+
190
+ </div>
191
+ </div>
192
+
193
+ <div id="attribute-i-ar3" class="method-detail">
194
+ <div class="method-heading attribute-method-heading">
195
+ <span class="method-name">ar3</span><span
196
+ class="attribute-access-type">[RW]</span>
197
+ </div>
198
+
199
+ <div class="method-description">
200
+
201
+
202
+
203
+ </div>
204
+ </div>
205
+
206
+ <div id="attribute-i-consensus" class="method-detail">
207
+ <div class="method-heading attribute-method-heading">
208
+ <span class="method-name">consensus</span><span
209
+ class="attribute-access-type">[RW]</span>
210
+ </div>
211
+
212
+ <div class="method-description">
213
+
214
+
215
+
216
+ </div>
217
+ </div>
218
+
219
+ <div id="attribute-i-consensus_quality" class="method-detail">
220
+ <div class="method-heading attribute-method-heading">
221
+ <span class="method-name">consensus_quality</span><span
222
+ class="attribute-access-type">[RW]</span>
223
+ </div>
224
+
225
+ <div class="method-description">
226
+
227
+
228
+
229
+ </div>
230
+ </div>
231
+
232
+ <div id="attribute-i-coverage" class="method-detail">
233
+ <div class="method-heading attribute-method-heading">
234
+ <span class="method-name">coverage</span><span
235
+ class="attribute-access-type">[RW]</span>
236
+ </div>
237
+
238
+ <div class="method-description">
239
+
240
+
241
+
242
+ </div>
243
+ </div>
244
+
245
+ <div id="attribute-i-pos" class="method-detail">
246
+ <div class="method-heading attribute-method-heading">
247
+ <span class="method-name">pos</span><span
248
+ class="attribute-access-type">[RW]</span>
249
+ </div>
250
+
251
+ <div class="method-description">
252
+
253
+
254
+
255
+ </div>
256
+ </div>
257
+
258
+ <div id="attribute-i-read_bases" class="method-detail">
259
+ <div class="method-heading attribute-method-heading">
260
+ <span class="method-name">read_bases</span><span
261
+ class="attribute-access-type">[RW]</span>
262
+ </div>
263
+
264
+ <div class="method-description">
265
+
266
+
267
+
268
+ </div>
269
+ </div>
270
+
271
+ <div id="attribute-i-read_quals" class="method-detail">
272
+ <div class="method-heading attribute-method-heading">
273
+ <span class="method-name">read_quals</span><span
274
+ class="attribute-access-type">[RW]</span>
275
+ </div>
276
+
277
+ <div class="method-description">
278
+
279
+
280
+
281
+ </div>
282
+ </div>
283
+
284
+ <div id="attribute-i-ref_base" class="method-detail">
285
+ <div class="method-heading attribute-method-heading">
286
+ <span class="method-name">ref_base</span><span
287
+ class="attribute-access-type">[RW]</span>
288
+ </div>
289
+
290
+ <div class="method-description">
291
+
292
+
293
+
294
+ </div>
295
+ </div>
296
+
297
+ <div id="attribute-i-ref_name" class="method-detail">
298
+ <div class="method-heading attribute-method-heading">
299
+ <span class="method-name">ref_name</span><span
300
+ class="attribute-access-type">[RW]</span>
301
+ </div>
302
+
303
+ <div class="method-description">
304
+
305
+
306
+
307
+ </div>
308
+ </div>
309
+
310
+ <div id="attribute-i-rms_mapq" class="method-detail">
311
+ <div class="method-heading attribute-method-heading">
312
+ <span class="method-name">rms_mapq</span><span
313
+ class="attribute-access-type">[RW]</span>
314
+ </div>
315
+
316
+ <div class="method-description">
317
+
318
+
319
+
320
+ </div>
321
+ </div>
322
+
323
+ <div id="attribute-i-snp_quality" class="method-detail">
324
+ <div class="method-heading attribute-method-heading">
325
+ <span class="method-name">snp_quality</span><span
326
+ class="attribute-access-type">[RW]</span>
327
+ </div>
328
+
329
+ <div class="method-description">
330
+
331
+
332
+
333
+ </div>
334
+ </div>
335
+
336
+ </section><!-- attribute-method-details -->
337
+
338
+
339
+ <!-- Methods -->
340
+
341
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section section">
342
+ <h3 class="section-header">Public Class Methods</h3>
343
+
344
+
345
+ <div id="method-c-new" class="method-detail ">
346
+
347
+ <div class="method-heading">
348
+ <span class="method-name">new</span><span
349
+ class="method-args">(pile_up_line)</span>
350
+ <span class="method-click-advice">click to toggle source</span>
351
+ </div>
352
+
353
+
354
+ <div class="method-description">
355
+
356
+ <p>creates the <a href="Pileup.html">Pileup</a> object</p>
357
+
358
+ <pre>pile_up_line = &quot;seq2\t151\tG\tG\t36\t0\t99\t12\t...........A\t:9&lt;;;7=&lt;&lt;&lt;&lt;&lt;&quot;
359
+ pile = Bio::DB::Pileup.new(pile_up_line)</pre>
360
+
361
+
362
+
363
+ <div class="method-source-code" id="new-source">
364
+ <pre><span class="ruby-comment"># File lib/bio/db/pileup.rb, line 35</span>
365
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">pile_up_line</span>)
366
+ <span class="ruby-identifier">cols</span> = <span class="ruby-identifier">pile_up_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\t/</span>)
367
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">cols</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-value">6</span> <span class="ruby-comment">##should only be able to get 6 lines from mpileup</span>
368
+ <span class="ruby-ivar">@ref_name</span>, <span class="ruby-ivar">@pos</span>, <span class="ruby-ivar">@ref_base</span>, <span class="ruby-ivar">@coverage</span>, <span class="ruby-ivar">@read_bases</span>, <span class="ruby-ivar">@read_quals</span> = <span class="ruby-identifier">cols</span>
369
+ <span class="ruby-keyword">elsif</span> (<span class="ruby-value">10</span><span class="ruby-operator">..</span><span class="ruby-value">13</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">cols</span>.<span class="ruby-identifier">length</span>) <span class="ruby-comment">##incase anyone tries to use deprecated pileup with -c flag we get upto 13 cols...</span>
370
+ <span class="ruby-ivar">@ref_name</span>, <span class="ruby-ivar">@pos</span>, <span class="ruby-ivar">@ref_base</span>, <span class="ruby-ivar">@consensus</span>, <span class="ruby-ivar">@consensus_quality</span>, <span class="ruby-ivar">@snp_quality</span>, <span class="ruby-ivar">@rms_mapq</span>, <span class="ruby-ivar">@coverage</span>, <span class="ruby-ivar">@read_bases</span>, <span class="ruby-ivar">@read_quals</span>, <span class="ruby-ivar">@ar1</span>, <span class="ruby-ivar">@ar2</span>, <span class="ruby-ivar">@ar3</span> = <span class="ruby-identifier">cols</span>
371
+ <span class="ruby-ivar">@consensus_quality</span> = <span class="ruby-ivar">@consensus_quality</span>.<span class="ruby-identifier">to_f</span>
372
+ <span class="ruby-ivar">@snp_quality</span> = <span class="ruby-ivar">@snp_quality</span>.<span class="ruby-identifier">to_f</span>
373
+ <span class="ruby-ivar">@rms_mapq</span> = <span class="ruby-ivar">@rms_mapq</span>.<span class="ruby-identifier">to_f</span>
374
+ <span class="ruby-keyword">else</span>
375
+ <span class="ruby-comment">#raise RuntimeError, &quot;parsing line '#{pile_up_line.chomp}' failed&quot;</span>
376
+ <span class="ruby-keyword">end</span>
377
+
378
+ <span class="ruby-ivar">@pos</span> = <span class="ruby-ivar">@pos</span>.<span class="ruby-identifier">to_i</span>
379
+ <span class="ruby-ivar">@coverage</span> = <span class="ruby-ivar">@coverage</span>.<span class="ruby-identifier">to_f</span>
380
+ <span class="ruby-ivar">@ref_count</span> = <span class="ruby-keyword">nil</span>
381
+ <span class="ruby-ivar">@non_ref_count_hash</span> = <span class="ruby-keyword">nil</span>
382
+ <span class="ruby-ivar">@non_ref_count</span> = <span class="ruby-keyword">nil</span>
383
+ <span class="ruby-keyword">end</span></pre>
384
+ </div><!-- new-source -->
385
+
386
+ </div>
387
+
388
+
389
+
390
+
391
+ </div><!-- new-method -->
392
+
393
+
394
+ </section><!-- public-class-method-details -->
395
+
396
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
397
+ <h3 class="section-header">Public Instance Methods</h3>
398
+
399
+
400
+ <div id="method-i-non_ref_count" class="method-detail ">
401
+
402
+ <div class="method-heading">
403
+ <span class="method-name">non_ref_count</span><span
404
+ class="method-args">()</span>
405
+ <span class="method-click-advice">click to toggle source</span>
406
+ </div>
407
+
408
+
409
+ <div class="method-description">
410
+
411
+ <p>returns the total non-reference bases in the reads at this position</p>
412
+
413
+
414
+
415
+ <div class="method-source-code" id="non_ref_count-source">
416
+ <pre><span class="ruby-comment"># File lib/bio/db/pileup.rb, line 65</span>
417
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">non_ref_count</span>
418
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@non_ref_count</span>.<span class="ruby-identifier">nil?</span>
419
+ <span class="ruby-ivar">@non_ref_count</span> = <span class="ruby-ivar">@read_bases</span>.<span class="ruby-identifier">count</span>(<span class="ruby-string">&quot;ATGCatgc&quot;</span>).<span class="ruby-identifier">to_f</span>
420
+ <span class="ruby-keyword">end</span>
421
+ <span class="ruby-ivar">@non_ref_count</span>
422
+ <span class="ruby-keyword">end</span></pre>
423
+ </div><!-- non_ref_count-source -->
424
+
425
+ </div>
426
+
427
+
428
+
429
+
430
+ </div><!-- non_ref_count-method -->
431
+
432
+
433
+ <div id="method-i-non_refs" class="method-detail ">
434
+
435
+ <div class="method-heading">
436
+ <span class="method-name">non_refs</span><span
437
+ class="method-args">()</span>
438
+ <span class="method-click-advice">click to toggle source</span>
439
+ </div>
440
+
441
+
442
+ <div class="method-description">
443
+
444
+ <p>Calculate the total count of each non-reference nucleotide and return a
445
+ hash of all 4 nt counts, returns a hash</p>
446
+
447
+ <pre class="ruby"><span class="ruby-identifier">pile</span>.<span class="ruby-identifier">non_refs</span> <span class="ruby-comment">#{:A =&gt; 1, :C =&gt; 0, :T =&gt; 0, :G =&gt; 0}</span>
448
+ </pre>
449
+
450
+
451
+
452
+ <div class="method-source-code" id="non_refs-source">
453
+ <pre><span class="ruby-comment"># File lib/bio/db/pileup.rb, line 57</span>
454
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">non_refs</span>
455
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@non_ref_count_hash</span>.<span class="ruby-identifier">nil?</span>
456
+ <span class="ruby-ivar">@non_ref_count_hash</span> = {<span class="ruby-value">:A</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read_bases</span>.<span class="ruby-identifier">count</span>(<span class="ruby-string">&quot;Aa&quot;</span>), <span class="ruby-value">:C</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read_bases</span>.<span class="ruby-identifier">count</span>(<span class="ruby-string">&quot;Cc&quot;</span>), <span class="ruby-value">:G</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read_bases</span>.<span class="ruby-identifier">count</span>(<span class="ruby-string">&quot;Gg&quot;</span>), <span class="ruby-value">:T</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read_bases</span>.<span class="ruby-identifier">count</span>(<span class="ruby-string">&quot;Tt&quot;</span>)}
457
+ <span class="ruby-keyword">end</span>
458
+ <span class="ruby-ivar">@non_ref_count_hash</span>
459
+ <span class="ruby-keyword">end</span></pre>
460
+ </div><!-- non_refs-source -->
461
+
462
+ </div>
463
+
464
+
465
+
466
+
467
+ </div><!-- non_refs-method -->
468
+
469
+
470
+ <div id="method-i-ref_count" class="method-detail ">
471
+
472
+ <div class="method-heading">
473
+ <span class="method-name">ref_count</span><span
474
+ class="method-args">()</span>
475
+ <span class="method-click-advice">click to toggle source</span>
476
+ </div>
477
+
478
+
479
+ <div class="method-description">
480
+
481
+ <p>returns the count of reference-bases in the reads at this position</p>
482
+
483
+
484
+
485
+ <div class="method-source-code" id="ref_count-source">
486
+ <pre><span class="ruby-comment"># File lib/bio/db/pileup.rb, line 73</span>
487
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">ref_count</span>
488
+ <span class="ruby-keyword">if</span> <span class="ruby-ivar">@ref_count</span>.<span class="ruby-identifier">nil?</span>
489
+ <span class="ruby-ivar">@ref_count</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">read_bases</span>.<span class="ruby-identifier">count</span>(<span class="ruby-string">&quot;.,&quot;</span>)
490
+ <span class="ruby-keyword">end</span>
491
+ <span class="ruby-ivar">@ref_count</span>
492
+ <span class="ruby-keyword">end</span></pre>
493
+ </div><!-- ref_count-source -->
494
+
495
+ </div>
496
+
497
+
498
+
499
+
500
+ </div><!-- ref_count-method -->
501
+
502
+
503
+ </section><!-- public-instance-method-details -->
504
+
505
+ </section><!-- 5Buntitled-5D -->
506
+
507
+ </div><!-- documentation -->
508
+
509
+
510
+ <footer id="validator-badges">
511
+ <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
512
+ <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.11.
513
+ <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
514
+ </footer>
515
+