viral_seq 1.6.3 → 1.6.4
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.
- checksums.yaml +4 -4
- data/README.md +6 -0
- data/bin/tcs_sdrm +31 -2
- data/docs/dr.json +15 -0
- data/lib/viral_seq/hivdr.rb +1 -1
- data/lib/viral_seq/tcs_dr.rb +18 -3
- data/lib/viral_seq/version.rb +2 -2
- data/rc_swans.svc@longleaf.unc.edu +0 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 02d26d720fef0501d70b012d9919f932b23a21b1caabbf508a56fffa162c311b
|
4
|
+
data.tar.gz: '0681add2b2fa2ca7dedffeaaf43bd8b0e2b6200dd38633e2eeda58946ced8238'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 301c188d736c9812006d30db8995fa7df683cc63443c1370de3d487dae77b88cfc60c8b674abc93b35f7457ced536a6e374433e5fbe0f423e4a7993ea4240ebc
|
7
|
+
data.tar.gz: 1118ab7b586da98bb2c3533f81c35a02f0efb1978c0b91e15b56218b05342ad83e73f96bd2df53f75e2e6cdd16c591582ebe864562a02d3dd78997678b706233
|
data/README.md
CHANGED
@@ -179,6 +179,12 @@ qc_seqhash.sdrm_hiv_pr(cut_off)
|
|
179
179
|
|
180
180
|
## Updates
|
181
181
|
|
182
|
+
### Version-1.6.4-07182022
|
183
|
+
|
184
|
+
1. Included region "P17" in the default `tcs -d` pipeline setting. `tcs` pipeline updated to version 2.5.1.
|
185
|
+
2. Loosen the locator params for the "V1V3" end region for rare alignment issues. Now the default "V1V3" region end with position 7205 to 7210 instead of 7208.
|
186
|
+
3. `tcs_sdrm` now analyse "P17" region for pairwise diversity.
|
187
|
+
|
182
188
|
### Version-1.6.3-02052022
|
183
189
|
|
184
190
|
1. Updated on `ViralSeq::Muscle` module along with the update of `muscle` from version 3.8.1 to 5.1.
|
data/bin/tcs_sdrm
CHANGED
@@ -172,6 +172,25 @@ libs.each do |lib|
|
|
172
172
|
linkage_list += sdrm[1]
|
173
173
|
aa_report_list += sdrm[2]
|
174
174
|
|
175
|
+
elsif seq_basename =~/P17/i
|
176
|
+
a3g_check = seqs.a3g
|
177
|
+
a3g_seqs = a3g_check[:a3g_seq]
|
178
|
+
a3g_filtered_seqs = a3g_check[:filtered_seq]
|
179
|
+
stop_codon_check = a3g_filtered_seqs.stop_codon(2)
|
180
|
+
stop_codon_seqs = stop_codon_check[:with_stop_codon]
|
181
|
+
filtered_seqs = stop_codon_check[:without_stop_codon]
|
182
|
+
poisson_minority_cutoff = filtered_seqs.pm
|
183
|
+
fdr_hash = filtered_seqs.fdr
|
184
|
+
summary_hash[:P17] = [
|
185
|
+
seqs.size.to_s,
|
186
|
+
a3g_seqs.size.to_s,
|
187
|
+
stop_codon_seqs.size.to_s,
|
188
|
+
filtered_seqs.size.to_s,
|
189
|
+
poisson_minority_cutoff.to_s
|
190
|
+
].join(',')
|
191
|
+
next if filtered_seqs.size < 3
|
192
|
+
filtered_seqs.write_nt_fa(File.join(filtered_seq_dir,seq_basename))
|
193
|
+
|
175
194
|
elsif seq_basename =~/RT/i
|
176
195
|
rt_seq1 = {}
|
177
196
|
rt_seq2 = {}
|
@@ -231,7 +250,6 @@ libs.each do |lib|
|
|
231
250
|
next if filtered_sh.size < 3
|
232
251
|
aligned_sh = filtered_sh.random_select(1000).align(:Super5)
|
233
252
|
aligned_sh.write_nt_fa(File.join(aln_seq_dir, File.basename(seq_file)))
|
234
|
-
puts 'aligned sequence written.'
|
235
253
|
end
|
236
254
|
|
237
255
|
r_script.gsub!(/PATH_TO_FASTA/,aln_seq_dir)
|
@@ -250,7 +268,7 @@ libs.each do |lib|
|
|
250
268
|
tag = data[0].split("_")[-1].gsub(/\W/,"").to_sym
|
251
269
|
summary_hash[tag] += "," + data[1].to_f.round(4).to_s + "," + data[2].to_f.round(4).to_s
|
252
270
|
end
|
253
|
-
[:PR, :RT, :IN, :V1V3].each do |regions|
|
271
|
+
[:PR, :RT, :IN, :V1V3, :P17].each do |regions|
|
254
272
|
next unless summary_hash[regions]
|
255
273
|
seq_summary_out.puts regions.to_s + "," + summary_hash[regions]
|
256
274
|
end
|
@@ -271,10 +289,13 @@ libs.each do |lib|
|
|
271
289
|
tcs_RT = 0
|
272
290
|
tcs_IN = 0
|
273
291
|
tcs_V1V3 = 0
|
292
|
+
tcs_P17 = 0
|
274
293
|
pi_RT = 0.0
|
275
294
|
pi_V1V3 = 0.0
|
295
|
+
pi_P17 = 0.0
|
276
296
|
dist20_RT = 0.0
|
277
297
|
dist20_V1V3 = 0.0
|
298
|
+
dist20_P17 = 0.0
|
278
299
|
summary_lines.each do |line|
|
279
300
|
data = line.chomp.split(",")
|
280
301
|
if data[0] == "PR"
|
@@ -289,6 +310,10 @@ libs.each do |lib|
|
|
289
310
|
tcs_V1V3 = data[1].to_i
|
290
311
|
pi_V1V3 = data[6].to_f
|
291
312
|
dist20_V1V3 = data[7].to_f
|
313
|
+
elsif data[0] == "P17"
|
314
|
+
tcs_P17 = data[4].to_i
|
315
|
+
pi_P17 = data[6].to_f
|
316
|
+
dist20_P17 = data[7].to_f
|
292
317
|
end
|
293
318
|
end
|
294
319
|
|
@@ -324,9 +349,13 @@ libs.each do |lib|
|
|
324
349
|
tcs_RT: tcs_RT,
|
325
350
|
tcs_IN: tcs_IN,
|
326
351
|
tcs_V1V3: tcs_V1V3,
|
352
|
+
tcs_P17: tcs_P17,
|
327
353
|
pi_RT: pi_RT,
|
354
|
+
pi_V1V3: pi_V1V3,
|
355
|
+
pi_P17: pi_P17,
|
328
356
|
dist20_RT: dist20_RT,
|
329
357
|
dist20_V1V3: dist20_V1V3,
|
358
|
+
dist20_P17: dist20_P17,
|
330
359
|
recency: recency,
|
331
360
|
sdrm_PR: sdrm_PR,
|
332
361
|
sdrm_RT: sdrm_RT,
|
data/docs/dr.json
CHANGED
@@ -62,6 +62,21 @@
|
|
62
62
|
"ref_end": 7208,
|
63
63
|
"indel": true,
|
64
64
|
"trim": false
|
65
|
+
},
|
66
|
+
{
|
67
|
+
"region": "P17",
|
68
|
+
"cdna": "GTGACTGGAGTTCAGACGTGTGCTCTTCCGATCTNNNNNNNNNNNCAGTCAACAAGGTTTCTGTCATCCAATTTTTTAC",
|
69
|
+
"forward": "GCCTCCCTCGCGCCATCAGAGATGTGTATAAGAGACAGNNNNGTCAGCCAAAATTACCCTATAGTGC",
|
70
|
+
"majority": 0.5,
|
71
|
+
"end_join": true,
|
72
|
+
"end_join_option": 1,
|
73
|
+
"overlap": 0,
|
74
|
+
"TCS_QC": true,
|
75
|
+
"ref_genome": "HXB2",
|
76
|
+
"ref_start": 1196,
|
77
|
+
"ref_end": 1725,
|
78
|
+
"indel": true,
|
79
|
+
"trim": false
|
65
80
|
}
|
66
81
|
]
|
67
82
|
}
|
data/lib/viral_seq/hivdr.rb
CHANGED
@@ -5,7 +5,7 @@ module ViralSeq
|
|
5
5
|
# functions to identify SDRMs from a ViralSeq::SeqHash object at HIV PR region.
|
6
6
|
# works for MPID-DR protocol (dx.doi.org/10.17504/protocols.io.useewbe)
|
7
7
|
# PR codon 1-99
|
8
|
-
# RT codon 34-122 (HXB2
|
8
|
+
# RT codon 34-122 (HXB2 2649-2914) and 152-236(3001-3257)
|
9
9
|
# IN codon 53-174 (HXB2 4384-4751)
|
10
10
|
# @param cutoff [Integer] cut-off for minimal abundance of a mutation to be called as valid mutation,
|
11
11
|
# can be obtained using ViralSeq::SeqHash#poisson_minority_cutoff function
|
data/lib/viral_seq/tcs_dr.rb
CHANGED
@@ -61,11 +61,26 @@ module ViralSeq
|
|
61
61
|
:TCS_QC=>true,
|
62
62
|
:ref_genome=>"HXB2",
|
63
63
|
:ref_start=>6585,
|
64
|
-
:ref_end=>
|
64
|
+
:ref_end=>7205..7210,
|
65
65
|
:indel=>true,
|
66
|
-
:trim=>false}
|
66
|
+
:trim=>false},
|
67
|
+
{:region=>"P17",
|
68
|
+
:cdna=>
|
69
|
+
"GTGACTGGAGTTCAGACGTGTGCTCTTCCGATCTNNNNNNNNNNNCAGTCAACAAGGTTTCTGTCATCCAATTTTTTAC",
|
70
|
+
:forward=>
|
71
|
+
"GCCTCCCTCGCGCCATCAGAGATGTGTATAAGAGACAGNNNNGTCAGCCAAAATTACCCTATAGTGC",
|
72
|
+
:majority=>0,
|
73
|
+
:end_join=>true,
|
74
|
+
:end_join_option=>1,
|
75
|
+
:overlap=>0,
|
76
|
+
:TCS_QC=>true,
|
77
|
+
:ref_genome=>"HXB2",
|
78
|
+
:ref_start=>1196,
|
79
|
+
:ref_end=>1725,
|
80
|
+
:indel=>true,
|
81
|
+
:trim=>false}
|
67
82
|
]
|
68
|
-
|
83
|
+
}
|
69
84
|
end
|
70
85
|
|
71
86
|
end
|
data/lib/viral_seq/version.rb
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: viral_seq
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.6.
|
4
|
+
version: 1.6.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shuntai Zhou
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2022-
|
12
|
+
date: 2022-07-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -193,6 +193,7 @@ files:
|
|
193
193
|
- lib/viral_seq/tcs_dr.rb
|
194
194
|
- lib/viral_seq/tcs_json.rb
|
195
195
|
- lib/viral_seq/version.rb
|
196
|
+
- rc_swans.svc@longleaf.unc.edu
|
196
197
|
- viral_seq.gemspec
|
197
198
|
homepage: https://github.com/ViralSeq/viral_seq
|
198
199
|
licenses:
|