Mercurial > hg > dml-open-cliopatria
comparison dml-cla/python/aggregate.py @ 0:718306e29690 tip
commiting public release
author | Daniel Wolff |
---|---|
date | Tue, 09 Feb 2016 21:05:06 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:718306e29690 |
---|---|
1 # Part of DML (Digital Music Laboratory) | |
2 # Copyright 2014-2015 Samer Abdallah, University College London | |
3 | |
4 # This program is free software; you can redistribute it and/or | |
5 # modify it under the terms of the GNU General Public License | |
6 # as published by the Free Software Foundation; either version 2 | |
7 # of the License, or (at your option) any later version. | |
8 # | |
9 # This program is distributed in the hope that it will be useful, | |
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 # GNU General Public License for more details. | |
13 # | |
14 # You should have received a copy of the GNU General Public | |
15 # License along with this library; if not, write to the Free Software | |
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |
17 | |
18 import sys,traceback | |
19 | |
20 def for_each(items,f): | |
21 bad=[] | |
22 num_ok=0 | |
23 | |
24 for x in items: | |
25 try: f(x); num_ok+=1 | |
26 except Exception as ex: | |
27 bad.append({'item':x, 'error':str(ex)}) | |
28 | |
29 # printing exception info | |
30 #traceback.print_exc() | |
31 | |
32 return {'ok_count':num_ok, 'failures':bad} | |
33 | |
34 def discrete_hist(domain,counts): return {'domain':domain, 'counts':counts} | |
35 def continuous_hist(edges,counts): return {'edges':edges,'counts':counts} | |
36 def decode_tagged(parser_table, v): return parser_table[v['tag']](v['value']) | |
37 def print_status(msg): sys.stderr.write(msg+'\n') |