miga-base 0.3.9.0 → 0.3.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/actions/add.rb +33 -33
  3. data/actions/edit.rb +33 -0
  4. data/actions/new.rb +17 -18
  5. data/actions/next_step.rb +33 -0
  6. data/actions/run.rb +15 -12
  7. data/bin/miga +43 -37
  8. data/lib/miga/daemon.rb +2 -2
  9. data/lib/miga/project/result.rb +16 -1
  10. data/lib/miga/version.rb +2 -2
  11. data/scripts/aai_distances.bash +1 -3
  12. data/scripts/ani_distances.bash +1 -3
  13. data/scripts/assembly.bash +1 -3
  14. data/scripts/cds.bash +1 -3
  15. data/scripts/clade_finding.bash +1 -3
  16. data/scripts/d.bash +13 -0
  17. data/scripts/distances.bash +1 -3
  18. data/scripts/essential_genes.bash +1 -3
  19. data/scripts/haai_distances.bash +1 -3
  20. data/scripts/miga.bash +12 -9
  21. data/scripts/mytaxa.bash +1 -3
  22. data/scripts/mytaxa_scan.bash +1 -3
  23. data/scripts/ogs.bash +36 -33
  24. data/scripts/p.bash +23 -0
  25. data/scripts/project_stats.bash +1 -3
  26. data/scripts/read_quality.bash +1 -3
  27. data/scripts/ssu.bash +1 -3
  28. data/scripts/stats.bash +1 -3
  29. data/scripts/subclades.bash +1 -3
  30. data/scripts/taxonomy.bash +1 -3
  31. data/scripts/trimmed_fasta.bash +1 -3
  32. data/scripts/trimmed_reads.bash +1 -3
  33. data/test/daemon_test.rb +3 -3
  34. data/utils/distance/runner.rb +1 -1
  35. data/utils/enveomics/Docs/recplot2.md +13 -2
  36. data/utils/enveomics/Examples/aai-matrix.bash +3 -3
  37. data/utils/enveomics/Examples/ani-matrix.bash +3 -3
  38. data/utils/enveomics/Makefile +2 -2
  39. data/utils/enveomics/Manifest/Tasks/blasttab.json +12 -4
  40. data/utils/enveomics/Manifest/Tasks/fasta.json +135 -0
  41. data/utils/enveomics/Manifest/Tasks/other.json +49 -0
  42. data/utils/enveomics/Manifest/categories.json +4 -0
  43. data/utils/enveomics/Manifest/examples.json +1 -1
  44. data/utils/enveomics/Pipelines/assembly.pbs/FastA.N50.pl +1 -1
  45. data/utils/enveomics/Pipelines/assembly.pbs/FastA.filterN.pl +1 -1
  46. data/utils/enveomics/Pipelines/assembly.pbs/FastA.length.pl +1 -1
  47. data/utils/enveomics/Pipelines/blast.pbs/FastA.split.pl +1 -1
  48. data/utils/enveomics/Scripts/BlastTab.catsbj.pl +63 -65
  49. data/utils/enveomics/Scripts/BlastTab.recplot2.R +4 -2
  50. data/utils/enveomics/Scripts/FastA.extract.rb +152 -0
  51. data/utils/enveomics/Scripts/FastA.mask.rb +89 -0
  52. data/utils/enveomics/Scripts/FastA.sample.rb +83 -0
  53. data/utils/enveomics/Scripts/GFF.catsbj.pl +127 -0
  54. data/utils/enveomics/Scripts/aai.rb +4 -3
  55. data/utils/enveomics/Scripts/lib/enveomics.R +1 -1
  56. data/utils/enveomics/enveomics.R/DESCRIPTION +1 -2
  57. data/utils/enveomics/enveomics.R/NAMESPACE +3 -3
  58. data/utils/enveomics/enveomics.R/R/recplot.R +2 -3
  59. data/utils/enveomics/enveomics.R/R/recplot2.R +221 -160
  60. data/utils/enveomics/enveomics.R/R/utils.R +19 -1
  61. data/utils/enveomics/enveomics.R/README.md +11 -0
  62. data/utils/enveomics/enveomics.R/man/enve.recplot.Rd +2 -2
  63. data/utils/enveomics/enveomics.R/man/enve.recplot2-class.Rd +1 -0
  64. data/utils/enveomics/enveomics.R/man/enve.recplot2.Rd +13 -5
  65. data/utils/enveomics/enveomics.R/man/enve.recplot2.extractWindows.Rd +10 -8
  66. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.mower.Rd +1 -1
  67. data/utils/enveomics/enveomics.R/man/enve.recplot2.windowDepthThreshold.Rd +26 -0
  68. data/utils/enveomics/enveomics.R/man/enve.truncate.Rd +22 -0
  69. data/utils/enveomics/enveomics.R/man/plot.enve.recplot2.Rd +13 -7
  70. data/utils/enveomics/enveomics.R/man/z$-methods.Rd +3 -4
  71. data/utils/subclade/runner.rb +4 -0
  72. metadata +14 -3
@@ -6,23 +6,25 @@ depth.}
6
6
  \usage{enve.recplot2.extractWindows(rp, peak, lower.tail = TRUE, significance = 0.05,
7
7
  seq.names = FALSE)}
8
8
  \arguments{
9
- \item{rp}{Recruitment plot, a enve.RecPlot2 object.}
9
+ \item{rp}{Recruitment plot, a `enve.RecPlot2` object.}
10
10
  \item{peak}{Peak, an `enve.RecPlot2.Peak` object. If list, it is assumed to be a
11
- list of enve.RecPlot2.Peak objects, in which case the core peak is
11
+ list of `enve.RecPlot2.Peak` objects, in which case the core peak is
12
12
  used (see `enve.recplot2.corePeak`).}
13
13
  \item{lower.tail}{If FALSE, it returns windows significantly above the peak in
14
14
  sequencing depth.}
15
15
  \item{significance}{Significance threshold (alpha) to select windows.}
16
16
  \item{seq.names}{Returns subject sequence names instead of a vector of Booleans. If
17
- the recruitment plot was generated with pos.breaks=0 it returns a
18
- vector of characters (the sequence identifiers), otherwise it returns
19
- a data.frame with a name column and two columns of coordinates.}
17
+ the recruitment plot was generated with named position bins (e.g, using
18
+ `pos.breaks`=0 or a two-column `pos.breaks.tsv`), it returns a vector of
19
+ characters (the sequence identifiers), otherwise it returns a data.frame
20
+ with a name column and two columns of coordinates.}
20
21
  }
21
22
 
22
23
  \value{Returns a vector of logicals if `seq.names=FALSE`. If `seq.names=TRUE`,
23
- it returns a vector of characters if the object was built with
24
- `pos.breaks=0` or a data.frame with four columns otherwise: name.from,
25
- name.to, pos.from, and pos.to (see `enve.recplot2.coordinates`).}
24
+ it returns a vector of characters if the object has `pos.names` defined,
25
+ or a data.frame with four columns otherwise:
26
+ name.from, name.to, pos.from, and pos.to
27
+ (see `enve.recplot2.coordinates`).}
26
28
 
27
29
  \author{Luis M. Rodriguez-R [aut, cre]}
28
30
 
@@ -17,7 +17,7 @@ sub-population mixtures, using a custom distribution-mowing method.}
17
17
  (`quant.est`) to estimate a peak.}
18
18
  \item{quant.est}{Range of quantiles to be used in the estimation of a peak's
19
19
  parameters.}
20
- \item{mlv.opts}{Options passed to `mlv` to estimate the mode.}
20
+ \item{mlv.opts}{Ignored. For backwards compatibility.}
21
21
  \item{fitdist.opts.sn}{
22
22
  }
23
23
  \item{fitdist.opts.norm}{
@@ -0,0 +1,26 @@
1
+ \name{enve.recplot2.windowDepthThreshold}
2
+ \alias{enve.recplot2.windowDepthThreshold}
3
+ \title{enve recplot2 windowDepthThreshold}
4
+ \description{Identifies the threshold below which windows should be identified as
5
+ variable or absent.}
6
+ \usage{enve.recplot2.windowDepthThreshold(rp, peak, lower.tail = TRUE,
7
+ significance = 0.05)}
8
+ \arguments{
9
+ \item{rp}{Recruitment plot, an `enve.RecPlot2` object.}
10
+ \item{peak}{Peak, an `enve.RecPlot2.Peak` object. If list, it is assumed to be a
11
+ list of `enve.RecPlot2.Peak` objects, in which case the core peak is
12
+ used (see `enve.recplot2.corePeak`).}
13
+ \item{lower.tail}{If FALSE, it returns windows significantly above the peak in
14
+ sequencing depth.}
15
+ \item{significance}{Significance threshold (alpha) to select windows.}
16
+ }
17
+
18
+ \value{Returns a float. The units are depth if the peaks were estimated in
19
+ linear scale, or log-depth otherwise (`peak$log`).}
20
+
21
+ \author{Luis M. Rodriguez-R [aut, cre]}
22
+
23
+
24
+
25
+
26
+
@@ -0,0 +1,22 @@
1
+ \name{enve.truncate}
2
+ \alias{enve.truncate}
3
+ \title{enve truncate}
4
+ \description{Removes the `n` highest and lowest values from a vector, and applies a
5
+ summary function. The value of `n` is determined such that the central
6
+ range is used, corresponding to the `f` fraction of values.}
7
+ \usage{enve.truncate(x, f = 0.95, FUN = mean)}
8
+ \arguments{
9
+ \item{x}{A vector of numbers.}
10
+ \item{f}{The fraction of values to retain.}
11
+ \item{FUN}{Summary function to apply to the vectors. To obtain the truncated
12
+ vector itself, use `c`.}
13
+ }
14
+
15
+ \value{Returns the summary (`FUN`) of the truncated vector.}
16
+
17
+ \author{Luis M. Rodriguez-R [aut, cre]}
18
+
19
+
20
+
21
+
22
+
@@ -3,9 +3,9 @@
3
3
  \title{plot enve RecPlot2}
4
4
  \description{Plots an `enve.RecPlot2` object.}
5
5
  \usage{\method{plot}{enve.RecPlot2}(x, layout = matrix(c(5, 5, 2, 1, 4, 3), nrow = 2),
6
- widths = c(1, 7, 2), heights = c(1, 2), palette = grey((100:0)/100),
7
- underlay.group = TRUE, peaks.col = "darkred", use.peaks,
8
- id.lim = range(x$id.breaks), pos.lim = range(x$pos.breaks),
6
+ panel.fun = list(), widths = c(1, 7, 2), heights = c(1, 2),
7
+ palette = grey((100:0)/100), underlay.group = TRUE, peaks.col = "darkred",
8
+ use.peaks, id.lim = range(x$id.breaks), pos.lim = range(x$pos.breaks),
9
9
  pos.units = c("Mbp", "Kbp", "bp"), mar = list(`1` = c(5,
10
10
  4, 1, 1) + 0.1, `2` = c(ifelse(any(layout == 1), 1, 5),
11
11
  4, 4, 1) + 0.1, `3` = c(5, ifelse(any(layout == 1), 1,
@@ -28,10 +28,16 @@ where:
28
28
  3: identity histogram,
29
29
  4: Populations histogram (histogram of sequencing depths),
30
30
  5: Color scale for the counts matrix (vertical),
31
- 6: Color scale of the counts
32
- matrix (horizontal). Only panels indicated here will be plotted. To
33
- plot only one panel simply set this to the number of the panel you
34
- want to plot.}
31
+ 6: Color scale of the counts matrix (horizontal)
32
+ Only panels indicated here will be plotted. To plot only one panel
33
+ simply set this to the number of the panel you want to plot.}
34
+ \item{panel.fun}{List of functions to be executed after drawing each panel. Use the
35
+ indices in `layout` (as characters) as keys. Functions for indices
36
+ missing in `layout` are ignored. For example, to add a vertical line
37
+ at the 3Mbp mark in both the position histogram and the counts matrix:
38
+ `list('1'=function() abline(v=3), '2'=function() abline(v=3))`.
39
+ Note that the X-axis in both panels is in Mbp by default. To change
40
+ this behavior, set `pos.units` accordingly.}
35
41
  \item{widths}{Relative widths of the columns of `layout`.}
36
42
  \item{heights}{Relative heights of the rows of `layout`.}
37
43
  \item{palette}{Colors to be used to represent the counts matrix, sorted from no hits
@@ -12,16 +12,15 @@
12
12
  \describe{
13
13
 
14
14
  \item{\code{signature(x = "enve.GrowthCurve")}}{
15
- %% ~~describe this method here~~
15
+ enve.GrowthCurve, a growth curve
16
16
  }
17
17
 
18
18
  \item{\code{signature(x = "enve.RecPlot2")}}{
19
- %% ~~describe this method here~~
19
+ enve.RecPlot2, a recruitment plot
20
20
  }
21
21
 
22
22
  \item{\code{signature(x = "enve.RecPlot2.Peak")}}{
23
- %% ~~describe this method here~~
23
+ enve.RecPlot2.Peak, a peak from a recruitment plot
24
24
  }
25
25
  }}
26
26
  \keyword{methods}
27
- \keyword{ ~~ other possible keyword(s) ~~ }
@@ -24,6 +24,10 @@ class MiGA::SubcladeRunner
24
24
  # Launch the appropriate analysis
25
25
  def go!
26
26
  return if project.type == :metagenomes
27
+ unless @project.dataset_names.any? { |i| @project.dataset(i).is_ref? }
28
+ FileUtils.touch(File.expand_path('miga-project.empty', @home))
29
+ return
30
+ end
27
31
  Dir.chdir home
28
32
  Dir.mktmpdir do |tmp_dir|
29
33
  @tmp = tmp_dir
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: miga-base
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.9.0
4
+ version: 0.3.9.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luis M. Rodriguez-R
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-03-07 00:00:00.000000000 Z
11
+ date: 2019-03-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: daemons
@@ -110,6 +110,7 @@ files:
110
110
  - actions/daemon.rb
111
111
  - actions/date.rb
112
112
  - actions/doctor.rb
113
+ - actions/edit.rb
113
114
  - actions/files.rb
114
115
  - actions/find.rb
115
116
  - actions/get.rb
@@ -118,6 +119,7 @@ files:
118
119
  - actions/ls.rb
119
120
  - actions/ncbi_get.rb
120
121
  - actions/new.rb
122
+ - actions/next_step.rb
121
123
  - actions/plugins.rb
122
124
  - actions/rm.rb
123
125
  - actions/run.rb
@@ -161,6 +163,7 @@ files:
161
163
  - scripts/assembly.bash
162
164
  - scripts/cds.bash
163
165
  - scripts/clade_finding.bash
166
+ - scripts/d.bash
164
167
  - scripts/distances.bash
165
168
  - scripts/essential_genes.bash
166
169
  - scripts/haai_distances.bash
@@ -169,6 +172,7 @@ files:
169
172
  - scripts/mytaxa.bash
170
173
  - scripts/mytaxa_scan.bash
171
174
  - scripts/ogs.bash
175
+ - scripts/p.bash
172
176
  - scripts/project_stats.bash
173
177
  - scripts/read_quality.bash
174
178
  - scripts/ssu.bash
@@ -285,6 +289,7 @@ files:
285
289
  - utils/enveomics/Scripts/CharTable.classify.rb
286
290
  - utils/enveomics/Scripts/EBIseq2tax.rb
287
291
  - utils/enveomics/Scripts/FastA.N50.pl
292
+ - utils/enveomics/Scripts/FastA.extract.rb
288
293
  - utils/enveomics/Scripts/FastA.filter.pl
289
294
  - utils/enveomics/Scripts/FastA.filterLen.pl
290
295
  - utils/enveomics/Scripts/FastA.filterN.pl
@@ -292,10 +297,12 @@ files:
292
297
  - utils/enveomics/Scripts/FastA.gc.pl
293
298
  - utils/enveomics/Scripts/FastA.interpose.pl
294
299
  - utils/enveomics/Scripts/FastA.length.pl
300
+ - utils/enveomics/Scripts/FastA.mask.rb
295
301
  - utils/enveomics/Scripts/FastA.per_file.pl
296
302
  - utils/enveomics/Scripts/FastA.qlen.pl
297
303
  - utils/enveomics/Scripts/FastA.rename.pl
298
304
  - utils/enveomics/Scripts/FastA.revcom.pl
305
+ - utils/enveomics/Scripts/FastA.sample.rb
299
306
  - utils/enveomics/Scripts/FastA.slider.pl
300
307
  - utils/enveomics/Scripts/FastA.split.pl
301
308
  - utils/enveomics/Scripts/FastA.split.rb
@@ -309,6 +316,7 @@ files:
309
316
  - utils/enveomics/Scripts/FastQ.tag.rb
310
317
  - utils/enveomics/Scripts/FastQ.test-error.rb
311
318
  - utils/enveomics/Scripts/FastQ.toFastA.awk
319
+ - utils/enveomics/Scripts/GFF.catsbj.pl
312
320
  - utils/enveomics/Scripts/GenBank.add_fields.rb
313
321
  - utils/enveomics/Scripts/HMM.essential.rb
314
322
  - utils/enveomics/Scripts/HMMsearch.extractIds.rb
@@ -440,8 +448,10 @@ files:
440
448
  - utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.mower.Rd
441
449
  - utils/enveomics/enveomics.R/man/enve.recplot2.peak-class.Rd
442
450
  - utils/enveomics/enveomics.R/man/enve.recplot2.seqdepth.Rd
451
+ - utils/enveomics/enveomics.R/man/enve.recplot2.windowDepthThreshold.Rd
443
452
  - utils/enveomics/enveomics.R/man/enve.tribs.Rd
444
453
  - utils/enveomics/enveomics.R/man/enve.tribs.test.Rd
454
+ - utils/enveomics/enveomics.R/man/enve.truncate.Rd
445
455
  - utils/enveomics/enveomics.R/man/enveomics.R-package.Rd
446
456
  - utils/enveomics/enveomics.R/man/growth.curves.Rd
447
457
  - utils/enveomics/enveomics.R/man/phyla.counts.Rd
@@ -496,7 +506,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
496
506
  - !ruby/object:Gem::Version
497
507
  version: '0'
498
508
  requirements: []
499
- rubygems_version: 3.0.2
509
+ rubyforge_project:
510
+ rubygems_version: 2.7.7
500
511
  signing_key:
501
512
  specification_version: 4
502
513
  summary: MiGA