Convenience functions to quickly access and modify attributes of data frames of the class design; methods for the class are described in a separate help topic
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
design undesign(design) redesign(design, undesigned) desnum(design) desnum(design) <- value run.order(design) run.order(design) <- value design.info(design) design.info(design) <- value factor.names(design) factor.names(design, contr.modify = TRUE, levordold = FALSE) <- value response.names(design) response.names(design, remove=FALSE) <- value col.remove(design, colnames) ord(matrix, decreasing=FALSE)
data frame of S3 class
an object that is currently not a design but could be (e.g. obtained by applying function
an appropriate replacement value:
logical to indicate whether contrasts are to be modified to match the new levels;
relevant for R factors only, not for numeric design variables;
logical to indicate whether the level ordering should follow the old function behavior;
logical to indicate whether responses not indicated in
character vector of names of columns to be removed from the design;
design factors or the block factor cannot be removed; with non-numeric variables,
matrix, data frame or also object of class design that is to be ordered column by column
logical, indicates whether decreasing order or not (increasing is default)
Items of class
design are data frames with attributes. They are generated
by various functions that create experimental designs (cf. see also section), and
by various utility functions for designs like
the above extractor function for class
The data frame itself always contains the design in uncoded form. For many
design generation functions, these are factors. For designs for quantitative factors
(bbd, ccd, lhs, 2-level designs with center points), the design variables are numeric.
This is always indicated by the design.info element quantitative, for which all components
TRUE in that case.
Generally, its attributes are
a numeric coded version of the design. For factor design variables, the content of
desnum depends on the contrast information of the factors (cf.
for modifying this).
run.order is a data frame
with run order information (standard order, randomized order, order with replication info),
and the details of
design.info partly depend on the type of design.
design.info generally is a list with first element
further info on the design,
and some options of the design call regarding randomization and replication.
For almost all design types, elements include
number of runs (not adjusted for replications)
number of factors
named list, as can be handed to function
the integer number of replications (1=unreplicated)
logical indicating whether replications are only repeat runs but not truly replicated
logical indicating whether the experiment was randomized
the integer seed handed to the function call by the user
in the presence of response data only; the character vector identifying response columns in the data frame
contains the call or (in the future) the list of menu settings within the currently developed package RcmdrPlugin.DoE that led to creation of the design.
For some design types, notably designs of types starting with “FrF2” and
designs that have been created by combining other designs,
there can be substantial additional information available from the
attribute in specialized situations. Detailed information on the structure of the
can be found in the value sections of the respective functions. A tabular overview
of the available
design.info elements is given on the authors homepage.
undesign removes all design-related attributes from a class design
object; this may be necessary for making some independent code work on design objects.
(For example, function
reshape from package stats does not
work on a class design object, presumably because of the specific extractor method for class
Occasionally, one may also want
to reconnect a processed undesigned object to its design properties. This is the purpose of
the respective attribute, i.e. e.g. function
extracts the design information for the design. The corresponding assignment
functions should only be used by very experienced users, as they may
mess up things badly if they are used naively .
response.names extract the
respective elements of the
design.info attribute. The corresponding assignment
functions allow to change factor names and/or factor codes and to exclude or include
a numeric variable from the list of responses that are recognized as such by analysis
procedures. Note that the
response.names function can (on request, not by default)
remove response variables from the data frame
design. However, it is not directly able to
add new responses from outside the data frame
design. This is what the
add.response is for.
col.remove removes columns from the design and returns the
design without these columns and an intact class
returns a numeric matrix, the corresponding replacement function modifies a class design object
returns a 3-column data frame with standard and actual run order as well as a run order with replication identifiers attached; the corresponding replacement function modifies a class design object
returns a named list the names of which are the names of the treatment factors of the design while the list elements are the vectors of levels for each factor
returns a class
returns a character vector of response names that
(names of numeric variables within the data frame
returns a class
returns a class
returns an index vector that orders the matrix or data frame;
Note that R contains a few functions that generate or work with an S class
which is cursorily documented in Appendix B of the white book (Chambers and Hastie 1993)
to consist of a data frame of R factors which will later be extended by numeric response columns.
Most class design objects as defined in packages DoE.base and FrF2 are also
compatible with this older class
design; they are not, however, as soon as quantitative
factors are involved, like for designs with center points in package
FrF2 or for most designs in
package DoE.wrapper (not yet on CRAN). If feasible with reasonable effort
and useful, functions for the class
design documented here incorporate the functions
for the S class design (notably function
This package is currently subject to intensive development; most key functionality is now included. Some changes to input and output structures may still occur.
Chambers, J.M. and Hastie, T.J. (1993). Statistical Models in S, Chapman and Hall, London.
See also the following functions known to produce objects of class
as well as
utility functions in this package for reshaping designs.
There are also special methods for class
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
oa12 <- oa.design(nlevels=c(2,2,6)) #### Examples for factor.names and response.names factor.names(oa12) ## rename factors factor.names(oa12) <- c("First.Factor", "Second.Factor", "Third.Factor") ## rename factors and relabel levels of first two factors namen <- c(rep(list(c("current","new")),2),list("")) names(namen) <- c("First.Factor", "Second.Factor", "Third.Factor") factor.names(oa12) <- namen oa12 ## add a few variables to oa12 responses <- cbind(temp=sample(23:34),y1=rexp(12),y2=runif(12)) oa12 <- add.response(oa12, responses) response.names(oa12) ## temp (for temperature) is not meant to be a response ## --> drop it from responselist but not from data response.names(oa12) <- c("y1","y2") ## looking at attributes of the design desnum(oa12) run.order(oa12) design.info(oa12) ## undesign and redesign u.oa12 <- undesign(oa12) str(u.oa12) u.oa12$new <- rnorm(12) r.oa12 <- redesign(oa12, u.oa12) ## make known that new is also a response response.names(r.oa12) <- c(response.names(r.oa12), "new") ## look at design-specific summary summary(r.oa12) ## look at data frame style summary instead summary.data.frame(r.oa12)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.