bio-gadget 0.4.0 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/bio-gadget/demlt.rb +10 -5
- data/lib/bio-gadget/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 83130daa98cf1f04006aba7a9602b52a036d8d9c
|
4
|
+
data.tar.gz: 3c99911a518cacaa4ee0661bbff1d007b506500b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2869693a0cb2357c9d9bab623a6686475c96ef9b9e28e6498a3b8cbe66404f7d31cccbe3b09957436eab9c9c87442df37177b2ca3704244bd03f97d2bb09b9b8
|
7
|
+
data.tar.gz: 644f86a29aed0eebbf30031f54fe70b28ce607d8248b594d393396bee192e83aa30ea0faffebcc35ffd8bd294e36e3f1f6f99b5ba266b11cdc3f266db76a01c9
|
data/lib/bio-gadget/demlt.rb
CHANGED
@@ -8,14 +8,16 @@ module Bio
|
|
8
8
|
|
9
9
|
namespace :bio
|
10
10
|
|
11
|
-
desc 'demlt BARCODE [FASTQ]', '
|
11
|
+
desc 'demlt BARCODE [FASTQ]', 'Demultiplex fastq from STDIN by barcodes. '
|
12
12
|
option 'output-dir', :aliases => '-o', :type => :string, :default => '.'
|
13
|
-
option 'umi-length', :aliases => '-u', :type => :numeric, :default => 4
|
14
|
-
option 'cdna-length', :aliases => '-c', :type => :numeric, :default => 37
|
13
|
+
option 'umi-length', :aliases => '-u', :type => :numeric, :default => 4, :desc => '0 is no umi, means no PCR-amplicon removal.'
|
14
|
+
option 'cdna-length', :aliases => '-c', :type => :numeric, :default => 37, :desc => '-1 is no trimming by length.'
|
15
|
+
option 'g-trimming', :aliases => '-g', :type => :boolean, :default => false, :desc => "Trimming of 5'-end poly-G. Length of the trimmed Gs attached after the read name. This sets cdna-length option to -1."
|
15
16
|
def demlt(bcfile, fastq=:stdin)
|
16
17
|
|
17
18
|
ofs = options['umi-length']
|
18
|
-
|
19
|
+
trim = options['g-trimming']
|
20
|
+
len = trim ? -1 : options['cdna-length']
|
19
21
|
|
20
22
|
wells = Array.new
|
21
23
|
bcs = Array.new
|
@@ -115,7 +117,7 @@ module Bio
|
|
115
117
|
outpath = "#{options['output-dir']}/#{well}.fq.xz"
|
116
118
|
pid = Kernel.fork {
|
117
119
|
left = ofs+bclen
|
118
|
-
right = ofs+bclen+len-1
|
120
|
+
right = trim ? -1 : ofs+bclen+len-1
|
119
121
|
preprocess = ofs > 0 ? <<"DEDUPandFORMAT"
|
120
122
|
ruby -F'\\t' -anle 'f1=$F[1][0..#{right}];f2=$F[2][0..#{right}];puts([f1+f2, $F[0], f2, f1].join("\\t"))' #{fifo3paths[i]} \\
|
121
123
|
| sort -k 1 -r | cut -f 2- | uniq -f 2 \\
|
@@ -124,6 +126,9 @@ DEDUPandFORMAT
|
|
124
126
|
: <<"FORMAT"
|
125
127
|
ruby -F'\\t' -anle 'puts(["@"+$F[0], $F[1][#{left}..#{right}], "+", $F[2][#{left}..#{right}].rstrip].join("\\n"))' #{fifo3paths[i]} \\
|
126
128
|
FORMAT
|
129
|
+
|
130
|
+
preprocess += '| ruby -e \'require "bio-faster";Bio::Faster.new(:stdin).each_record(:quality=>:raw){|v|s=v[1].gsub(/^G+/,"");l=v[1].length-s.length;puts("@#{v[0]}|-G#{l}\\n#{s}\\n+\\n#{v[2][l,s.length]}")}\'' if trim
|
131
|
+
|
127
132
|
exec preprocess+"| xz -z -c -e > #{outpath}"
|
128
133
|
}
|
129
134
|
}
|
data/lib/bio-gadget/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bio-gadget
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shintaro Katayama
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-04-
|
11
|
+
date: 2013-04-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|