Function ICFTs calculates interaction contribution frequency tables, function ICFT does the same for an entire (usually small) design with more detail.
ICFTs(design, digits = 3, resk.only = TRUE, kmin = NULL, kmax = ncol(design),
detail = FALSE, with.blocks = FALSE, conc = TRUE)
ICFT(design, digits = 3, with.blocks = FALSE, conc = TRUE, recode=TRUE)
Function ICFTs
returns a list of lists with a component for
each projection size considered. Each such component contains the following entries:
interaction contribution frequency table for the projection size
individual interaction contributions (if requested by option detail
)
squared singular values (if requested by option detail
)
squared column means of left-singular vectors (if requested by option detail
)
Function ICFT
returns a list with the following components:
interaction contribution frequency table for the projection size
Average \(R^2\) frequency table for the projection size
squared singular values of the model matrix
squared column means of left-singular vectors in the rotated version (concentrated or even)
model matrix of the interaction
(left singular vectors corresponding to the rotated version of ICFT (concentrated or even); these do not depend on the coding underlying the model matrix
(right singular vectors corresponding to the rotated version of ICFT (concentrated or even); these depend on the coding underlying the model matrix
(v%*%c.worst
is the worst case parameter vector for the model matrix mm
in terms of bias of the average response for estimation of the intercept
caused by the interaction under consideration
a factorial design. This can either be a matrix or a data frame
in which all columns are experimental factors, or a special data frame
of class design
, which may also include response data.
In any case, the design should be a factorial design;
the functions are not useful for quantitative designs (like e.g. latin hypercube samples).
integer; number of digits to round to
logical; if all
is TRUE
, should only full resolution projections be considered?
Choosing FALSE
may cause very long run times.
integer; purpose is to continue an earlier run with additional larger projections
integer; limit on projection sizes to consider
logical indicating whether calculation details are to be returned (see Groemping 2016). These will not be needed for normal use of the outcome, but may be interesting for special situations.
a logical, indicating whether or not an existing block factor
is to be included into word counting. This option is ignored if design
is not of class design
.
Per default, an existing block factor is ignored.
For designs without a block factor, the option does not have an effect.
If the design is blocked, and with.blocks
is TRUE
, the block factor is treated like any other factor.
logical indicating whether ambiguities should be resolved
concentrating the contribution on as few individual values as possible (default)
or distributing it as evenly as possible (if FALSE
)
logical indicating whether or not to recode each column into normalized orthogonal
coding with function contr.XuWu
;
if set to FALSE, it is the users responsibility to provide a design in a
normalized orthogonal coding of choice
Ulrike Groemping
The functions have been checked on the types of designs for which
they are intended (especially orthogonal arrays produced with oa.design
).
They may produce meaningless results for some other types of designs.
The functions work for factors only and are not intended for quantitative variables.
Function ICFTs
decomposes the projected $a_k$ values (most often: projected $a_3$ values)
into single degree of freedom contributions from the respective $k$ factor interaction.
Function ICFT
decomposes the all-factor interaction of the design given to it;
it is intended for deep-dive investigations.
The ICFT itself is independent of the choice of normalized orthogonal coding, as are the singular values and the matrix of left singular vectors; in case of several identical singular values, the left singular vectors are not uniquely determined but are subject to arbitrary rotation. The right singular vectors depend on the choice of normalized orthogonal coding. They represent the directions of coefficient vectors for which the interaction contributions indicate the bias potential for the intercept (see Groemping 2016 for the maths behind this).
Groemping, U. (2017). An Interaction-Based Decomposition of Generalized Word Counts Suited to Assessing Combinatorial Equivalence of Factorial Designs. Reports in Mathematics, Physics and Chemistry, Report 1/2017. http://www1.bht-berlin.de/FB_II/reports/Report-2017-001.pdf, Department II, Berliner Hochschule fuer Technik (formerly Beuth University of Applied Sciences), Berlin.
Groemping, U. (2018). Coding Invariance in Factorial Linear Models and a New Tool for Assessing Combinatorial Equivalence of Factorial Designs. Journal of Statistical Planning and Inference 193, 1-14. tools:::Rd_expr_doi("10.1016/j.jspi.2017.07.004").
See also GWLP
and generalized.word.length
oa24.bad <- oa.design(L24.2.13.3.1.4.1, columns=c(1,2,14,15))
oa24.good <- oa.design(L24.2.13.3.1.4.1, columns=c(3,10,14,15))
## resolution is III in both cases, but the bad one has more words of length 3
GWLP(oa24.bad)[4:5]
ICFTs(oa24.bad)
ICFTs(oa24.bad, conc=FALSE)
GWLP(oa24.good)[4:5]
ICFTs(oa24.good)
ICFTs(oa24.good, conc=FALSE)
ICFTs(oa24.good, resk.only=FALSE)
ICFT(L18[,c(1,4,6)])
ICFT(L18[,c(1,4,6)], conc=FALSE)
Run the code above in your browser using DataLab