Method: Statsample::FormulaWrapper#non_redundant_tokens

Defined in:
lib/statsample/formula/formula.rb

#non_redundant_tokensArray

Returns tokens to produce non-redundant design matrix

Returns:

  • (Array)

    array of tokens that do not produce redundant matrix



47
48
49
50
51
52
53
54
# File 'lib/statsample/formula/formula.rb', line 47

def non_redundant_tokens
  groups = split_to_groups
  # TODO: An enhancement
  # Right now x:c appears as c:x
  groups.each { |k, v| groups[k] = strip_numeric v, k }
  groups.each { |k, v| groups[k] = Formula.new(v).canonical_tokens }
  groups.flat_map { |k, v| add_numeric v, k }
end