Generate multi-factorial data

genMultiFac(
  nFactors,
  each,
  levels = 2,
  coding = "dummy",
  colNames = NULL,
  idName = "id"
)

Arguments

nFactors

Number of factors (columns) to generate.

each

Number of replications for each combination of factors. Must be specified.

levels

Vector or scalar. If a vector is specified, it must be the same length as nFatctors. Each value of the vector represents the number of levels of each corresponding factor. If a scalar is specified, each factor will have the same number of levels. The default is 2 levels for each factor.

coding

String value to specify if "dummy" or "effect" coding is used. Defaults to "dummy".

colNames

A vector of strings, with a length of nFactors. The strings represent the name for each factor.

idName

A string that specifies the id of the record. Defaults to "id".

Value

A data.table that contains the added simulated data. Each column contains an integer.

Examples

genMultiFac(nFactors = 2, each = 5)
#> id Var1 Var2 #> 1: 1 0 0 #> 2: 2 0 0 #> 3: 3 0 0 #> 4: 4 0 0 #> 5: 5 0 0 #> 6: 6 1 0 #> 7: 7 1 0 #> 8: 8 1 0 #> 9: 9 1 0 #> 10: 10 1 0 #> 11: 11 0 1 #> 12: 12 0 1 #> 13: 13 0 1 #> 14: 14 0 1 #> 15: 15 0 1 #> 16: 16 1 1 #> 17: 17 1 1 #> 18: 18 1 1 #> 19: 19 1 1 #> 20: 20 1 1
genMultiFac(nFactors = 2, each = 4, levels = c(2, 3))
#> id Var1 Var2 #> 1: 1 1 1 #> 2: 2 1 1 #> 3: 3 1 1 #> 4: 4 1 1 #> 5: 5 2 1 #> 6: 6 2 1 #> 7: 7 2 1 #> 8: 8 2 1 #> 9: 9 1 2 #> 10: 10 1 2 #> 11: 11 1 2 #> 12: 12 1 2 #> 13: 13 2 2 #> 14: 14 2 2 #> 15: 15 2 2 #> 16: 16 2 2 #> 17: 17 1 3 #> 18: 18 1 3 #> 19: 19 1 3 #> 20: 20 1 3 #> 21: 21 2 3 #> 22: 22 2 3 #> 23: 23 2 3 #> 24: 24 2 3 #> id Var1 Var2
genMultiFac( nFactors = 3, each = 1, coding = "effect", colNames = c("Fac1", "Fac2", "Fac3"), id = "block" )
#> block Fac1 Fac2 Fac3 #> 1: 1 -1 -1 -1 #> 2: 2 1 -1 -1 #> 3: 3 -1 1 -1 #> 4: 4 1 1 -1 #> 5: 5 -1 -1 1 #> 6: 6 1 -1 1 #> 7: 7 -1 1 1 #> 8: 8 1 1 1