Description Usage Arguments Details Value Author(s) See Also Examples
gen.data generates random dataset(s) from given paramater values and model (specified via model file or textConnection) for paramteric bootstrap.
sample.data generates random dataset(s) from given data for nonparametric bootstrap.
gen.predictions generates response probabilities or predicted responses from given paramater values and model (specified via model file or textConnection).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | gen.data(parameter.values, samples,
model.filename,
data = NULL, n.per.item.type = NULL,
restrictions.filename = NULL, model.type = c("easy", "eqn", "eqn2"),
reparam.ineq = TRUE, check.model = TRUE)
sample.data(data, samples,
model.filename = NULL, categories.per.type = NULL,
model.type = c("easy", "eqn", "eqn2"), check.model = TRUE)
gen.predictions(parameter.values,
model.filename,
restrictions.filename = NULL,
n.per.item.type = NULL,
model.type = c("easy", "eqn", "eqn2"),
reparam.ineq = TRUE, check.model = TRUE)
|
parameter.values |
|
samples |
Number of random datasets to be generated from a given set of paramater values. |
n.per.item.type |
|
data |
data |
categories.per.type |
numeric vector indicating how many response categories each item type has. |
model.filename |
A character |
restrictions.filename |
|
model.type |
Character vector specifying whether the model file is formatted in the easy way ( |
reparam.ineq |
Should inequality restrictions be applied (i.e., the model reparametrized)? Default is |
check.model |
logical. Should model be chekced with random values whether or not the expected values sum to one per tree? Default is |
gen.data and sample.data are basically wrapper for rmultinom (called multiple times, if there is more than one item type). The prob argument of rmultinom is obtained differently for the two functions. For gen.data it corresponds to the predicted response proportions as returned by get.predictions (which is actually called by gen.data). For sample.data it is the proprtion of responses for each item type.
gen.data needs to know how big the n for each item type is. This can either be specified via the data or the n.per.item.type argument (i.e., one of those needs to be non-NULL). See the examples.
sample.data needs to know which response categories correspond to each item type. This can either be specified via the model.filename or the categories.per.type argument (i.e., one of those needs to be non-NULL). See the examples.
Either a vector or matrix containing the generated data (for gen.data and sample.data) or a vector containing the predictions (for gen.predictions).
Henrik Singmann and David Kellen
fit.mpt or fit.model for functions that will fit the generated data. Note that it is probably a very good idea to set fit.aggregated = FALSE when fitting larger sets of generated data.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | #### using the model and data from Broeder & Schuetz:
data(d.broeder, package = "MPTinR")
m.2htm <- system.file("extdata", "5points.2htm.model", package = "MPTinR")
m.sdt <- "pkg/MPTinR/inst/extdata/broeder.sdt.model"
m.sdt <- system.file("extdata", "broeder.sdt.model", package = "MPTinR")
# fit the 2HTM
br.2htm <- fit.mpt(colSums(d.broeder), m.2htm)
# fit the SDT model
br.sdt <- fit.model(colSums(d.broeder), m.sdt, lower.bound = c(rep(-Inf, 5), 0, 1),
upper.bound = Inf)
# get one random dataset using the paramater values obtained (i.e., parametric bootstrap)
# and the data argument.
gen.data(br.2htm[["parameters"]][,1], 1, m.2htm, data = colSums(d.broeder))
gen.data(br.sdt[["parameters"]][,1], 1, m.sdt, data = colSums(d.broeder))
# get one random dataset using the paramater values obtained (i.e., parametric bootstrap)
# and the n.per.item.type argument.
gen.data(br.2htm[["parameters"]][,1], 1, m.2htm,
n.per.item.type = c(240, 2160, 600, 1800, 1200, 1200, 1800, 600, 2160, 240))
gen.data(br.sdt[["parameters"]][,1], 1, m.sdt,
n.per.item.type = c(240, 2160, 600, 1800, 1200, 1200, 1800, 600, 2160, 240))
# sample one random dataset from the original data:
sample.data(colSums(d.broeder), 1, model.filename = m.2htm)
# above uses the model.filename argument
sample.data(colSums(d.broeder), 1, categories.per.type = rep(2,10))
# above uses the categories.per.type argument
# just get the predicted proportions:
predictions.mpt <- gen.predictions(br.2htm[["parameters"]][,1], m.2htm)
predictions.sdt <- gen.predictions(br.sdt[["parameters"]][,1], m.sdt)
# predicting using the proactive Inhibiton Model (Riefer & Batchelder, 1988, Figure 1)
model1 <- system.file("extdata", "rb.fig1.model", package = "MPTinR")
gen.predictions(c(r = 0.3, p = 1, q = 0.4944), model1)
gen.predictions(c(r = 0.3, p = 1, q = 0.4944), model1, n.per.item.type = 180)
# the order of parameters is reordered (i.e., not alphabetically)
# but as the vector is named, it does not matter!
# Compare with:
data(rb.fig1.data, package = "MPTinR")
fit.mpt(rb.fig1.data[1,], model1, n.optim = 1)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.