Sha256: bb7c25d28e0759ccac155a45b0784b5da0a571d24e4bf23a390f7a1d60d14dda

Contents?: true

Size: 497 Bytes

Versions: 1

Compression:

Stored size: 497 Bytes

Contents

module ScoringStrategies

  def percentile(ranking, item)
    ranking.percentile(item)
  end
  
  def identity(ranking, item)
    ranking[item]
  end

  def present(row)
    1
  end

  def sum(scores)
    scores.inject(0) {|s,x| s+x}
  end

  def average(scores)
    # remove dependency on statarray
    # scores.to_statarray.mean
    score_length = scores.length
    sum = 0
    sum = scores.inject( nil ) { |sum,x| sum ? sum+x : x }
    (sum.to_f / score_length.to_f)
  end
  
  extend self
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
metric_fu-2.0.0 lib/base/scoring_strategies.rb