class FpGrowth::Miner::Pattern

Attributes

content[R]
support[RW]

Public Class Methods

new(content=[], support = 0) click to toggle source
# File lib/fpgrowth/miner/pattern.rb, line 9
def initialize(content=[], support = 0)
  @content = content
  @support = support
end

Public Instance Methods

+(y) click to toggle source
# File lib/fpgrowth/miner/pattern.rb, line 14
def +(y)
  return self unless y
  return Pattern.new(@content + y.content, [@support, y.support].min)
end
<<(y) click to toggle source
# File lib/fpgrowth/miner/pattern.rb, line 19
def <<(y)
  if y.is_a?(Array)
    min_support = @support
    for node in y
      unless @content.include?(node.item)
        @content << node.item
        if min_support > node.support then
          min_support = node.support
        end
      end
    end
    @support = min_support
  elsif y.is_a?(FpTree::Node)
    self << [y]
  end

end
clone() click to toggle source
# File lib/fpgrowth/miner/pattern.rb, line 41
def clone
  return Pattern.new(@content.clone, @support)
end
size() click to toggle source
# File lib/fpgrowth/miner/pattern.rb, line 37
def size
  @content.size
end