#!/usr/bin/env ruby1.9.1 shard_count_key = "__SHARD_COUNT__" STDIN.set_encoding 'utf-8' STDOUT.set_encoding 'utf-8' w = {} c = {} w.default = 0 c.default = 0 while line = STDIN.gets key, val = line.split /\t/ w[key] += val.to_f c[key] += 1 end puts "# dtrain reducer: active on all" shard_count = w["__SHARD_COUNT__"] puts "shard count #{shard_count}" w.each_key { |k| if k == shard_count_key then next end if c[k] == shard_count then puts "#{k}\t#{w[k]/shard_count}" end }