Sha256: c5f667ddc781f2af3911fcd43926cd3c8a339c2cfc802d046ed856b6eaaed4ce

Contents?: true

Size: 628 Bytes

Versions: 5

Compression:

Stored size: 628 Bytes

Contents

class VectorModel
  attr_accessor :bar

  def bar(max = nil, desc = nil)
    desc, max = max, nil if desc.nil?
    @bar ||= Log::ProgressBar.new max
    @bar.desc = desc
    @bar.max = max
    @bar.init
    @bar
  end

  def balance_labels
    counts = Misc.counts(@labels)
    min = counts.values.min

    used = {}
    new_labels = []
    new_features = []
    @labels.zip(@features).shuffle.each do |label, features|
      used[label] ||= 0
      next if used[label] > min
      used[label] += 1
      new_labels << label
      new_features << features
    end
    @labels = new_labels
    @features = new_features
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
rbbt-dm-1.3.2 lib/rbbt/vector/model/util.rb
rbbt-dm-1.3.0 lib/rbbt/vector/model/util.rb
rbbt-dm-1.2.10 lib/rbbt/vector/model/util.rb
rbbt-dm-1.2.9 lib/rbbt/vector/model/util.rb
rbbt-dm-1.2.7 lib/rbbt/vector/model/util.rb