# This file is automatically generated, you probably don't want to edit this
quantsOptions <- if (requireNamespace("jmvcore", quietly=TRUE)) R6::R6Class(
"quantsOptions",
inherit = jmvcore::Options,
public = list(
initialize = function(
distr = "normdist",
quant = 0.975,
N = 100,
grp = 1,
numRows = 2,
numCols = 2, ...) {
super$initialize(
package="Quantiles",
name="quants",
requiresData=FALSE,
...)
private$..distr <- jmvcore::OptionList$new(
"distr",
distr,
default="normdist",
options=list(
"normdist",
"tdist",
"chidist",
"fdist"))
private$..quant <- jmvcore::OptionNumber$new(
"quant",
quant,
default=0.975,
min=0.0001,
max=0.9999)
private$..N <- jmvcore::OptionNumber$new(
"N",
N,
default=100,
min=2)
private$..grp <- jmvcore::OptionNumber$new(
"grp",
grp,
default=1)
private$..numRows <- jmvcore::OptionNumber$new(
"numRows",
numRows,
default=2)
private$..numCols <- jmvcore::OptionNumber$new(
"numCols",
numCols,
default=2)
self$.addOption(private$..distr)
self$.addOption(private$..quant)
self$.addOption(private$..N)
self$.addOption(private$..grp)
self$.addOption(private$..numRows)
self$.addOption(private$..numCols)
}),
active = list(
distr = function() private$..distr$value,
quant = function() private$..quant$value,
N = function() private$..N$value,
grp = function() private$..grp$value,
numRows = function() private$..numRows$value,
numCols = function() private$..numCols$value),
private = list(
..distr = NA,
..quant = NA,
..N = NA,
..grp = NA,
..numRows = NA,
..numCols = NA)
)
quantsResults <- if (requireNamespace("jmvcore", quietly=TRUE)) R6::R6Class(
"quantsResults",
inherit = jmvcore::Group,
active = list(
text = function() private$.items[["text"]],
plot = function() private$.items[["plot"]]),
private = list(),
public=list(
initialize=function(options) {
super$initialize(
options=options,
name="",
title="Find Quantile")
self$add(jmvcore::Preformatted$new(
options=options,
name="text",
title="Quantile"))
self$add(jmvcore::Image$new(
options=options,
name="plot",
title="Distribution plot",
width=400,
height=300,
renderFun=".plot"))}))
quantsBase <- if (requireNamespace("jmvcore", quietly=TRUE)) R6::R6Class(
"quantsBase",
inherit = jmvcore::Analysis,
public = list(
initialize = function(options, data=NULL, datasetId="", analysisId="", revision=0) {
super$initialize(
package = "Quantiles",
name = "quants",
version = c(1,0,0),
options = options,
results = quantsResults$new(options=options),
data = data,
datasetId = datasetId,
analysisId = analysisId,
revision = revision,
pause = NULL,
completeWhenFilled = FALSE,
requiresMissings = FALSE)
}))
#' Find Quantiles
#'
#'
#' @param distr .
#' @param quant .
#' @param N .
#' @param grp .
#' @param numRows .
#' @param numCols .
#' @return A results object containing:
#' \tabular{llllll}{
#' \code{results$text} \tab \tab \tab \tab \tab a preformatted \cr
#' \code{results$plot} \tab \tab \tab \tab \tab an image \cr
#' }
#'
#' @export
quants <- function(
distr = "normdist",
quant = 0.975,
N = 100,
grp = 1,
numRows = 2,
numCols = 2) {
if ( ! requireNamespace("jmvcore", quietly=TRUE))
stop("quants requires jmvcore to be installed (restart may be required)")
options <- quantsOptions$new(
distr = distr,
quant = quant,
N = N,
grp = grp,
numRows = numRows,
numCols = numCols)
analysis <- quantsClass$new(
options = options,
data = data)
analysis$run()
analysis$results
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.