#!/usr/bin/python2 from __future__ import absolute_import from __future__ import division from __future__ import print_function import re import sys def parse_file(filename): data = {} for line in open(filename): if re.match('\d', line): (samples, percent, symbol) = line.split() data[symbol] = float(percent) return data data1 = parse_file(sys.argv[1]) data2 = parse_file(sys.argv[2]) delta = {} for symbol in list(data1.keys()) + list(data2.keys()): delta[symbol] = data1.get(symbol, 0) - data2.get(symbol, 0) def lookup_delta(symbol): return delta[symbol] sorted_deltas = sorted(list(delta.keys()), key=lookup_delta, reverse=True) if len(sorted_deltas) > 40: sorted_deltas = sorted_deltas[0:20] + sorted_deltas[-20:] for symbol in sorted_deltas: print('%2.3f %s' % (delta[symbol], symbol))