Learn R Programming

biotools (version 2.2)

creategroups: Creating Homogeneous Groups

Description

A function to create homogeneous groups of named objects according to an objective function evaluated at a covariate. It can be useful to design experiments which contain a fixed covariate factor.

Usage

creategroups(x, ngroups, sizes, fun = mean, tol = 0.01, maxit = 200)

Arguments

x
a numeric vector of a covariate at which to evaluate the objective function.
ngroups
the number of groups to create.
sizes
a numeric vector of length equal to ngroups containing the group sizes.
fun
the objective function, i.e., to create groups with similar fun; default is mean.
tol
the tolerance level to define the groups as homogenenous; see details.
maxit
the maximum number of iterations; default is 200.

Value

  • A list of
  • covara character indicating the name of the covariate.
  • funca character indicating the name of the objective function.
  • val.funca numeric vector containing the values evaluated by func on each group.
  • niterthe number of iteration require to achieve convergence.
  • labelsa list containing the labels of the objects in each group.
  • groupsa list of named vectors containing the values for the groups

Details

creategroups uses a tol value to evaluate the following statistic: $h = \sum_{j}^{ngroups} abs( t_{j+1} - t_j ) / ngroups$, where $t_j = fun(group_j)$. If $h \leq tol$, the groups are considered homogeneous.

Examples

Run this code
x <- rnorm(10, 1, 0.5)
names(x) <- letters[1:10]
creategroups(x, ngroups = 2, sizes = c(5, 5))
creategroups(x, ngroups = 3, sizes = c(3, 4, 3), tol = 0.05)

# End (not run)

Run the code above in your browser using DataLab