miga-base 0.7.26.3 → 1.0.0.sr1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. checksums.yaml +4 -4
  2. data/lib/miga/_data/aai-intax.blast.tsv.gz +0 -0
  3. data/lib/miga/_data/aai-intax.diamond.tsv.gz +0 -0
  4. data/lib/miga/_data/aai-novel.blast.tsv.gz +0 -0
  5. data/lib/miga/_data/aai-novel.diamond.tsv.gz +0 -0
  6. data/lib/miga/cli/action/doctor.rb +50 -19
  7. data/lib/miga/cli/action/doctor/base.rb +20 -18
  8. data/lib/miga/cli/action/init.rb +11 -7
  9. data/lib/miga/cli/action/init/files_helper.rb +1 -0
  10. data/lib/miga/cli/action/ncbi_get.rb +3 -3
  11. data/lib/miga/cli/action/tax_dist.rb +2 -2
  12. data/lib/miga/cli/action/wf.rb +5 -4
  13. data/lib/miga/daemon.rb +11 -4
  14. data/lib/miga/dataset/result.rb +10 -6
  15. data/lib/miga/json.rb +1 -2
  16. data/lib/miga/metadata.rb +5 -1
  17. data/lib/miga/parallel.rb +11 -6
  18. data/lib/miga/project.rb +8 -8
  19. data/lib/miga/project/base.rb +4 -4
  20. data/lib/miga/project/result.rb +2 -2
  21. data/lib/miga/sqlite.rb +7 -0
  22. data/lib/miga/version.rb +23 -9
  23. data/scripts/aai_distances.bash +16 -18
  24. data/scripts/ani_distances.bash +16 -17
  25. data/scripts/assembly.bash +31 -16
  26. data/scripts/haai_distances.bash +3 -27
  27. data/scripts/miga.bash +6 -4
  28. data/scripts/p.bash +1 -1
  29. data/scripts/read_quality.bash +9 -18
  30. data/scripts/trimmed_fasta.bash +14 -30
  31. data/scripts/trimmed_reads.bash +36 -36
  32. data/test/parallel_test.rb +31 -0
  33. data/test/project_test.rb +2 -1
  34. data/utils/distance/commands.rb +1 -0
  35. data/utils/distance/runner.rb +2 -4
  36. data/utils/enveomics/Manifest/Tasks/fasta.json +39 -3
  37. data/utils/enveomics/Manifest/Tasks/fastq.json +50 -2
  38. data/utils/enveomics/Manifest/Tasks/mapping.json +70 -0
  39. data/utils/enveomics/Manifest/Tasks/other.json +77 -0
  40. data/utils/enveomics/Manifest/Tasks/sequence-identity.json +138 -1
  41. data/utils/enveomics/Manifest/categories.json +13 -4
  42. data/utils/enveomics/Scripts/Aln.cat.rb +206 -148
  43. data/utils/enveomics/Scripts/FastA.N50.pl +33 -29
  44. data/utils/enveomics/Scripts/FastA.fragment.rb +69 -61
  45. data/utils/enveomics/Scripts/FastA.sample.rb +61 -46
  46. data/utils/enveomics/Scripts/FastA.toFastQ.rb +69 -0
  47. data/utils/enveomics/Scripts/FastQ.maskQual.rb +89 -0
  48. data/utils/enveomics/Scripts/FastQ.tag.rb +59 -52
  49. data/utils/enveomics/Scripts/SRA.download.bash +6 -8
  50. data/utils/enveomics/Scripts/Table.prefScore.R +60 -0
  51. data/utils/enveomics/Scripts/aai.rb +3 -2
  52. data/utils/enveomics/Scripts/anir.rb +137 -0
  53. data/utils/enveomics/Scripts/lib/enveomics_rb/anir.rb +293 -0
  54. data/utils/enveomics/Scripts/lib/enveomics_rb/bm_set.rb +175 -0
  55. data/utils/enveomics/Scripts/lib/enveomics_rb/enveomics.rb +17 -17
  56. data/utils/enveomics/Scripts/lib/enveomics_rb/errors.rb +17 -0
  57. data/utils/enveomics/Scripts/lib/enveomics_rb/gmm_em.rb +30 -0
  58. data/utils/enveomics/Scripts/lib/enveomics_rb/match.rb +63 -0
  59. data/utils/enveomics/Scripts/lib/enveomics_rb/rbm.rb +49 -0
  60. data/utils/enveomics/Scripts/lib/enveomics_rb/stats.rb +3 -0
  61. data/utils/enveomics/Scripts/lib/enveomics_rb/stats/rand.rb +31 -0
  62. data/utils/enveomics/Scripts/lib/enveomics_rb/stats/sample.rb +152 -0
  63. data/utils/enveomics/Scripts/lib/enveomics_rb/utils.rb +73 -0
  64. data/utils/enveomics/Scripts/rbm-legacy.rb +172 -0
  65. data/utils/enveomics/Scripts/rbm.rb +87 -133
  66. data/utils/enveomics/Scripts/sam.filter.rb +148 -0
  67. data/utils/enveomics/enveomics.R/DESCRIPTION +2 -2
  68. data/utils/enveomics/enveomics.R/NAMESPACE +1 -1
  69. data/utils/enveomics/enveomics.R/R/prefscore.R +79 -0
  70. data/utils/enveomics/enveomics.R/R/utils.R +30 -0
  71. data/utils/enveomics/enveomics.R/README.md +1 -0
  72. data/utils/enveomics/enveomics.R/man/cash-enve.GrowthCurve-method.Rd +0 -1
  73. data/utils/enveomics/enveomics.R/man/cash-enve.RecPlot2-method.Rd +0 -1
  74. data/utils/enveomics/enveomics.R/man/cash-enve.RecPlot2.Peak-method.Rd +0 -1
  75. data/utils/enveomics/enveomics.R/man/enve.__tribs.Rd +10 -2
  76. data/utils/enveomics/enveomics.R/man/enve.barplot.Rd +16 -4
  77. data/utils/enveomics/enveomics.R/man/enve.cliopts.Rd +13 -3
  78. data/utils/enveomics/enveomics.R/man/enve.df2dist.Rd +8 -2
  79. data/utils/enveomics/enveomics.R/man/enve.df2dist.group.Rd +8 -2
  80. data/utils/enveomics/enveomics.R/man/enve.df2dist.list.Rd +9 -2
  81. data/utils/enveomics/enveomics.R/man/enve.growthcurve.Rd +13 -5
  82. data/utils/enveomics/enveomics.R/man/enve.prefscore.Rd +50 -0
  83. data/utils/enveomics/enveomics.R/man/enve.prune.dist.Rd +9 -2
  84. data/utils/enveomics/enveomics.R/man/enve.recplot.Rd +23 -6
  85. data/utils/enveomics/enveomics.R/man/enve.recplot2.Rd +13 -4
  86. data/utils/enveomics/enveomics.R/man/enve.recplot2.compareIdentities.Rd +8 -2
  87. data/utils/enveomics/enveomics.R/man/enve.recplot2.extractWindows.Rd +7 -2
  88. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.__mow_one.Rd +14 -3
  89. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.em.Rd +10 -2
  90. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.emauto.Rd +8 -2
  91. data/utils/enveomics/enveomics.R/man/enve.recplot2.findPeaks.mower.Rd +17 -9
  92. data/utils/enveomics/enveomics.R/man/enve.recplot2.windowDepthThreshold.Rd +6 -2
  93. data/utils/enveomics/enveomics.R/man/enve.selvector.Rd +23 -0
  94. data/utils/enveomics/enveomics.R/man/enve.tribs.Rd +14 -5
  95. data/utils/enveomics/enveomics.R/man/plot.enve.GrowthCurve.Rd +19 -4
  96. data/utils/enveomics/enveomics.R/man/plot.enve.TRIBS.Rd +11 -3
  97. data/utils/enveomics/enveomics.R/man/plot.enve.TRIBStest.Rd +11 -4
  98. data/utils/enveomics/enveomics.R/man/plot.enve.recplot2.Rd +26 -12
  99. data/utils/multitrim/Multitrim How-To.pdf +0 -0
  100. data/utils/multitrim/README.md +67 -0
  101. data/utils/multitrim/multitrim.py +1555 -0
  102. data/utils/multitrim/multitrim.yml +13 -0
  103. data/utils/requirements.txt +4 -3
  104. metadata +33 -6
  105. data/utils/enveomics/Scripts/lib/enveomics_rb/stat.rb +0 -30
@@ -0,0 +1,148 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # frozen_string_literal: true
4
+
5
+ $VERSION = 1.0
6
+ $:.push File.expand_path('../lib', __FILE__)
7
+ require 'enveomics_rb/enveomics'
8
+ use 'shellwords'
9
+
10
+ o = {
11
+ q: false, threads: 2, m_format: :sam, g_format: :fasta, identity: 95.0,
12
+ o: '-', header: true
13
+ }
14
+
15
+ OptionParser.new do |opt|
16
+ Enveomics.opt_banner(
17
+ opt, 'Filters a SAM or BAM file by target sequences and/or identity',
18
+ "#{File.basename($0)} -m map.sam -o filtered_map.sam [options]"
19
+ )
20
+
21
+ opt.separator 'Input/Output'
22
+ opt.on(
23
+ '-g', '--genome PATH',
24
+ 'Genome assembly',
25
+ 'Supports compression with .gz extension, use - for STDIN'
26
+ ) { |v| o[:g] = v }
27
+ opt.on(
28
+ '-m', '--mapping PATH',
29
+ 'Mapping file',
30
+ 'Supports compression with .gz extension, use - for STDIN'
31
+ ) { |v| o[:m] = v }
32
+ opt.on(
33
+ '-o', '--out-sam PATH',
34
+ 'Output filtered file in SAM format',
35
+ 'Supports compression with .gz extension, use - for STDOUT (default)'
36
+ ) { |v| o[:o] = v }
37
+ opt.separator ''
38
+
39
+ opt.separator 'Formats'
40
+ opt.on(
41
+ '--g-format STRING',
42
+ 'Genome assembly format: fasta (default) or list'
43
+ ) { |v| o[:g_format] = v.downcase.to_sym }
44
+ opt.on(
45
+ '--m-format STRING',
46
+ 'Mapping file format: sam (default) or bam',
47
+ 'sam supports compression with .gz file extension'
48
+ ) { |v| o[:m_format] = v.downcase.to_sym }
49
+ opt.separator ''
50
+
51
+ opt.separator 'General'
52
+ opt.on(
53
+ '-i', '--identity FLOAT', Float,
54
+ "Set a fixed threshold of percent identity (default: #{o[:identity]})"
55
+ ) { |v| o[:identity] = v }
56
+ opt.on('--no-header', 'Do not include the headers') { |v| o[:header] = v }
57
+ opt.separator ''
58
+ opt.on(
59
+ '-t', '--threads INT', Integer, "Threads to use (default: #{o[:threads]})"
60
+ ) { |v| o[:threads] = v }
61
+ opt.on('-l', '--log PATH', 'Log file to save output') { |v| o[:log] = v }
62
+ opt.on('-q', '--quiet', 'Run quietly') { |v| o[:q] = v }
63
+ opt.on('-h', '--help', 'Display this screen') do
64
+ puts opt
65
+ exit
66
+ end
67
+ opt.separator ''
68
+ end.parse!
69
+
70
+ $QUIET = o[:q]
71
+
72
+ # Functions
73
+
74
+ ##
75
+ # Parses one line +ln+ in SAM format and outputs filtered lines to +ofh+
76
+ # Filters by minimum +identity+ and +target+ sequences, and prints
77
+ # the headers if +header+
78
+ def parse_sam_line(ln, identity, target, header, ofh)
79
+ if ln =~ /^@/ || ln =~ /^\s*$/
80
+ ofh.puts ln if header
81
+ return
82
+ end
83
+
84
+ # No match
85
+ row = ln.chomp.split("\t")
86
+ return if row[2] == '*'
87
+
88
+ # Filter by target
89
+ return if !target.nil? && !target.include?(row[2])
90
+
91
+ # Exclude unless concordant or unaligned
92
+ length = row[9].size
93
+ row.shift(11) # Discard non-flag columns
94
+ flags = Hash[row.map { |i| i.sub(/:.:/, ':').split(':', 2) }]
95
+ return if flags['YT'] && !%w[CP UU].include?(flags['YT'])
96
+
97
+ # Filter by identity
98
+ unless flags['MD']
99
+ raise Enveomics::ParseError.new(
100
+ "SAM line missing MD flag:\n#{ln}\nFlags: #{flags}"
101
+ )
102
+ end
103
+ mismatches = flags['MD'].scan(/[^\d]/).count
104
+ id = 100.0 * (length - mismatches) / length
105
+ ofh.puts ln if id >= identity
106
+ end
107
+
108
+ # Reading targets
109
+ if o[:g]
110
+ say 'Loading target sequences to filter'
111
+ reader = reader(o[:g])
112
+ target =
113
+ case o[:g_format]
114
+ when :fasta
115
+ reader.each.map { |ln| $1 if ln =~ /^>(\S+)/ }.compact
116
+ when :list
117
+ reader.each.map(&:chomp)
118
+ else
119
+ raise Enveomics::OptionError.new(
120
+ "Unsupported target sequences format: #{o[:g_format]}"
121
+ )
122
+ end
123
+ reader.close
124
+ else
125
+ target = nil
126
+ end
127
+
128
+ # Reading and filtering mapping
129
+ say 'Reading mapping file'
130
+ ofh = writer(o[:o])
131
+ case o[:m_format]
132
+ when :sam
133
+ reader = reader(o[:m])
134
+ reader.each { |ln| parse_sam_line(ln, o[:identity], target, o[:header], ofh) }
135
+ reader.close
136
+ when :bam
137
+ cmd = ['samtools', 'view', o[:m], '-@', o[:threads]]
138
+ cmd << '-h' if o[:header]
139
+ IO.popen(cmd.shelljoin) do |fh|
140
+ fh.each { |ln| parse_sam_line(ln, o[:identity], target, o[:header], ofh) }
141
+ end
142
+ else
143
+ raise Enveomics::OptionError.new(
144
+ "Unsupported mapping format: #{o[:m_format]}"
145
+ )
146
+ end
147
+ ofh.close
148
+
@@ -1,5 +1,5 @@
1
1
  Package: enveomics.R
2
- Version: 1.7.1
2
+ Version: 1.8.0
3
3
  Authors@R: c(person("Luis M.","Rodriguez-R",role=c("aut","cre"),
4
4
  email="lmrodriguezr@gmail.com"))
5
5
  Title: Various Utilities for Microbial Genomics and Metagenomics
@@ -28,4 +28,4 @@ Suggests:
28
28
  License: Artistic-2.0
29
29
  LazyData: yes
30
30
  Encoding: UTF-8
31
- RoxygenNote: 6.1.1
31
+ RoxygenNote: 7.0.2
@@ -36,4 +36,4 @@ export(
36
36
  enve.recplot2.compareIdentities,
37
37
  enve.recplot2.coordinates, enve.recplot2.seqdepth, enve.recplot2.ANIr,
38
38
  enve.growthcurve, plot.enve.GrowthCurve, summary.enve.GrowthCurve,
39
- enve.col2alpha, enve.truncate)
39
+ enve.col2alpha, enve.truncate, enve.selvector, enve.prefscore)
@@ -0,0 +1,79 @@
1
+ #' Enveomics: Pref Score
2
+ #'
3
+ #' Estimate preference score of species based on occupancy in biased sample sets
4
+ #'
5
+ #' @param x
6
+ #' Occupancy matrix (logical or numeric binary) with species as rows and samples
7
+ #' as columns
8
+ #' @param set
9
+ #' Vector indicating samples in the test set. It can be any selection vector:
10
+ #' boolean (same length as the number of columns in \code{x}), or numeric or
11
+ #' character vector with indexes of the \code{x} columns.
12
+ #' @param ignore
13
+ #' Vector indicating species to ignore. It can be any selection vector with
14
+ #' respect to the rows in \code{x} (see \code{set}).
15
+ #' @param signif.thr Absolute value of the significance threshold
16
+ #' @param plot Indicates if a plot should be generated
17
+ #' @param col.above Color for points significantly above zero
18
+ #' @param col.equal Color for points not significantly different from zero
19
+ #' @param col.below Color for points significantly below zero
20
+ #' @param ... Any additional parameters supported by \code{plot}
21
+ #'
22
+ #' @return Returns a named vector of preference scores.
23
+ #'
24
+ #' @author Luis M. Rodriguez-R [aut, cre]
25
+ #'
26
+ #' @export
27
+
28
+ enve.prefscore <- function
29
+ (
30
+ x,
31
+ set,
32
+ ignore = NULL,
33
+ signif.thr,
34
+ plot = TRUE,
35
+ col.above = rgb(148, 17, 0, maxColorValue = 255),
36
+ col.equal = rgb(189, 189, 189, maxColorValue = 255),
37
+ col.below = rgb(47, 84, 150, maxColorValue = 255),
38
+ ...
39
+ ) {
40
+ # Normalize classes and filter universe
41
+ x <- !!as.matrix(x)
42
+ if(is.null(colnames(x))) colnames(x) <- 1:ncol(x)
43
+ if(is.null(rownames(x))) rownames(x) <- 1:nrow(x)
44
+ set <- enve.selvector(set, colnames(x))
45
+ universe <- !enve.selvector(ignore, rownames(x))
46
+ x.u <- x[universe, ]
47
+ if(missing(signif.thr)) signif.thr <- 1 + 100 / length(universe)
48
+
49
+ # Base (null) probabilities
50
+ p_a <- (rowSums(x.u) + 1) / (ncol(x.u) + 2)
51
+ p_b <- (colSums(x.u) + 1) / (nrow(x.u) + 2)
52
+ p_p <- p_a %*% t(p_b)
53
+
54
+ # Set preference score
55
+ expected <- (rowSums(p_p[, set]) - rowSums(p_p[, !set])) / sum(p_p)
56
+ observed <- (rowSums(x.u[, set]) - rowSums(x.u[, !set])) / sum(x.u)
57
+ y <- observed / abs(expected)
58
+ names(y) <- rownames(x)[universe]
59
+ y.code <- cut(y, c(-Inf, -signif.thr, signif.thr, Inf), 1:3)
60
+
61
+ # Plot
62
+ if(plot) {
63
+ idx <- (1:nrow(x))[universe]
64
+ opts.def <- list(x = idx, y = y, ylim = c(-1, 1) * max(abs(y)),
65
+ xlab = 'Species', ylab = 'Preference score', xlim = c(0, nrow(x)+1),
66
+ col = c(col.above, col.equal, col.below)[y.code],
67
+ las = 1, xaxs = 'i', pch = 15)
68
+ opts <- list(...)
69
+ for(i in names(opts.def)) if(is.null(opts[[i]])) opts[[i]] <- opts.def[[i]]
70
+ do.call('plot', opts)
71
+ abline(h = 0, lty = 1, col = rgb(0, 0, 0, 1/4))
72
+ abline(h = c(-1, 1) * signif.thr, lty = 2, col = rgb(0, 0, 0, 1/4))
73
+ }
74
+
75
+ # Print and return
76
+ print(table(c(c('<', '=', '>')[y.code], rep('Tot', length(y.code)))))
77
+ cat('---------\n')
78
+ return(y)
79
+ }
@@ -48,3 +48,33 @@ enve.truncate <- function
48
48
  y <- sort(x)[ -c(seq(1, n), seq(length(x)+1-n, length(x))) ]
49
49
  return(FUN(y))
50
50
  }
51
+
52
+ #' Enveomics: Selection vector
53
+ #'
54
+ #' Normalizes a selection vector \code{sel} to a logical vector with indexes
55
+ #' from \code{dim.names}.
56
+ #'
57
+ #' @param sel A vector of numbers, characters, or booleans.
58
+ #' @param dim.names A vector of names from which to select.
59
+ #'
60
+ #' @return Returns a logical vector with the same length as \code{dim.name}.
61
+ #'
62
+ #' @author Luis M. Rodriguez-R [aut, cre]
63
+ #'
64
+ #' @export
65
+
66
+ enve.selvector <- function(sel, dim.names) {
67
+ if(is.logical(sel)) {
68
+ if(length(sel) != length(dim.names))
69
+ stop('sel is logical but differs in length from dim.names')
70
+ sel
71
+ } else if(is.numeric(sel)) {
72
+ if(max(sel) > length(dim.names))
73
+ stop('sel includes numeric index beyond the length of dim.names')
74
+ 1:length(dim.names) %in% sel
75
+ } else {
76
+ if(any(!sel %in% dim.names))
77
+ stop('sel includes character index missing from dim.names')
78
+ dim.names %in% sel
79
+ }
80
+ }
@@ -52,6 +52,7 @@ For additional information on recruitment plots, see the
52
52
  [Recruitment plots working document](https://github.com/lmrodriguezr/enveomics/blob/master/Docs/recplot2.md).
53
53
 
54
54
  ## Changelog
55
+ * 1.8.0: New functions `enve.selvector` and `enve.prefscore`.
55
56
  * 1.7.1: Improved efficiency of `enve.df2dist` about five-fold.
56
57
  * 1.7.0: Uniformized output for `enve.recplot2.extractWindows` and
57
58
  `enve.recplot2.coordinates` to ease automation. Thanks to Tomeu Viver and
@@ -1,6 +1,5 @@
1
1
  % Generated by roxygen2: do not edit by hand
2
2
  % Please edit documentation in R/growthcurve.R
3
- \docType{methods}
4
3
  \name{$,enve.GrowthCurve-method}
5
4
  \alias{$,enve.GrowthCurve-method}
6
5
  \title{Attribute accessor}
@@ -1,6 +1,5 @@
1
1
  % Generated by roxygen2: do not edit by hand
2
2
  % Please edit documentation in R/recplot2.R
3
- \docType{methods}
4
3
  \name{$,enve.RecPlot2-method}
5
4
  \alias{$,enve.RecPlot2-method}
6
5
  \title{Attribute accessor}
@@ -1,6 +1,5 @@
1
1
  % Generated by roxygen2: do not edit by hand
2
2
  % Please edit documentation in R/recplot2.R
3
- \docType{methods}
4
3
  \name{$,enve.RecPlot2.Peak-method}
5
4
  \alias{$,enve.RecPlot2.Peak-method}
6
5
  \title{Attribute accessor}
@@ -4,8 +4,16 @@
4
4
  \alias{enve.__tribs}
5
5
  \title{Enveomics: TRIBS - Internal Ancillary Function}
6
6
  \usage{
7
- enve.__tribs(rep, frx, selection, dimensions, dots, dist.method,
8
- summary.fx, dist)
7
+ enve.__tribs(
8
+ rep,
9
+ frx,
10
+ selection,
11
+ dimensions,
12
+ dots,
13
+ dist.method,
14
+ summary.fx,
15
+ dist
16
+ )
9
17
  }
10
18
  \arguments{
11
19
  \item{rep}{Replicates}
@@ -4,10 +4,22 @@
4
4
  \alias{enve.barplot}
5
5
  \title{Enveomics: Barplot}
6
6
  \usage{
7
- enve.barplot(x, sizes, top = 25, colors.per.group = 9,
8
- bars.width = 4, legend.ncol = 1, other.col = "#000000",
9
- add.trend = FALSE, organic.trend = FALSE, sort.by = median,
10
- min.report = 101, order = NULL, col, ...)
7
+ enve.barplot(
8
+ x,
9
+ sizes,
10
+ top = 25,
11
+ colors.per.group = 9,
12
+ bars.width = 4,
13
+ legend.ncol = 1,
14
+ other.col = "#000000",
15
+ add.trend = FALSE,
16
+ organic.trend = FALSE,
17
+ sort.by = median,
18
+ min.report = 101,
19
+ order = NULL,
20
+ col,
21
+ ...
22
+ )
11
23
  }
12
24
  \arguments{
13
25
  \item{x}{Can be either the input data or the path to the file containing
@@ -4,9 +4,19 @@
4
4
  \alias{enve.cliopts}
5
5
  \title{Enveomics: Cliopts}
6
6
  \usage{
7
- enve.cliopts(fx, rd_file, positional_arguments, usage, mandatory = c(),
8
- vectorize = c(), ignore = c(), number = c(), defaults = list(),
9
- o_desc = list(), p_desc = "")
7
+ enve.cliopts(
8
+ fx,
9
+ rd_file,
10
+ positional_arguments,
11
+ usage,
12
+ mandatory = c(),
13
+ vectorize = c(),
14
+ ignore = c(),
15
+ number = c(),
16
+ defaults = list(),
17
+ o_desc = list(),
18
+ p_desc = ""
19
+ )
10
20
  }
11
21
  \arguments{
12
22
  \item{fx}{Function for which the interface should be generated.}
@@ -4,8 +4,14 @@
4
4
  \alias{enve.df2dist}
5
5
  \title{Enveomics: Data Frame to Dist}
6
6
  \usage{
7
- enve.df2dist(x, obj1.index = 1, obj2.index = 2, dist.index = 3,
8
- default.d = NA, max.sim = 0)
7
+ enve.df2dist(
8
+ x,
9
+ obj1.index = 1,
10
+ obj2.index = 2,
11
+ dist.index = 3,
12
+ default.d = NA,
13
+ max.sim = 0
14
+ )
9
15
  }
10
16
  \arguments{
11
17
  \item{x}{A dataframe (or coercible object) with at least three columns:
@@ -4,8 +4,14 @@
4
4
  \alias{enve.df2dist.group}
5
5
  \title{Enveomics: Data Frame to Dist (Group)}
6
6
  \usage{
7
- enve.df2dist.group(x, obj1.index = 1, obj2.index = 2, dist.index = 3,
8
- summary = median, empty.rm = TRUE)
7
+ enve.df2dist.group(
8
+ x,
9
+ obj1.index = 1,
10
+ obj2.index = 2,
11
+ dist.index = 3,
12
+ summary = median,
13
+ empty.rm = TRUE
14
+ )
9
15
  }
10
16
  \arguments{
11
17
  \item{x}{A dataframe (or coercible object) with at least three columns:
@@ -4,8 +4,15 @@
4
4
  \alias{enve.df2dist.list}
5
5
  \title{Enveomics: Data Frame to Dist (List)}
6
6
  \usage{
7
- enve.df2dist.list(x, groups, obj1.index = 1, obj2.index = 2,
8
- dist.index = 3, empty.rm = TRUE, ...)
7
+ enve.df2dist.list(
8
+ x,
9
+ groups,
10
+ obj1.index = 1,
11
+ obj2.index = 2,
12
+ dist.index = 3,
13
+ empty.rm = TRUE,
14
+ ...
15
+ )
9
16
  }
10
17
  \arguments{
11
18
  \item{x}{A dataframe (or coercible object) with at least three columns:
@@ -4,11 +4,19 @@
4
4
  \alias{enve.growthcurve}
5
5
  \title{Enveomics: Growth Curve}
6
6
  \usage{
7
- enve.growthcurve(x, times = 1:nrow(x), triplicates = FALSE, design,
8
- new.times = seq(min(times), max(times), length.out = length(times) *
9
- 10), level = 0.95, interval = c("confidence", "prediction"),
10
- plot = TRUE, FUN = function(t, K, r, P0) K * P0 * exp(r * t)/(K + P0
11
- * (exp(r * t) - 1)), nls.opt = list(), ...)
7
+ enve.growthcurve(
8
+ x,
9
+ times = 1:nrow(x),
10
+ triplicates = FALSE,
11
+ design,
12
+ new.times = seq(min(times), max(times), length.out = length(times) * 10),
13
+ level = 0.95,
14
+ interval = c("confidence", "prediction"),
15
+ plot = TRUE,
16
+ FUN = function(t, K, r, P0) K * P0 * exp(r * t)/(K + P0 * (exp(r * t) - 1)),
17
+ nls.opt = list(),
18
+ ...
19
+ )
12
20
  }
13
21
  \arguments{
14
22
  \item{x}{Data frame (or coercible) containing the observed growth data