| 24 | |
| 25 | |
| 26 | class Counter_quantity(): |
| 27 | def __init__(self,): |
| 28 | self.counter = {'total':{'count': 0, 'rate': [0,0,0],'ratio':[0,0,0]}} |
| 29 | self.error = {'total':{'count': 0, 'rate': 0,'ratio':0}} |
| 30 | def add(self,type_name,rate): |
| 31 | name = 'total' |
| 32 | self.counter[name]['count']+=1 |
| 33 | for i in range(len(rate)): |
| 34 | s = rate[i] |
| 35 | |
| 36 | self.counter[name]['rate'][i]+=s |
| 37 | self.counter[name]['ratio'][i]= self.counter[name]['rate'][i] /self.counter[name]['count'] |
| 38 | |
| 39 | if not type_name in self.counter.keys(): |
| 40 | self.counter[type_name] ={'count': 0, 'rate': [0,0,0],'ratio':[0,0,0]} |
| 41 | |
| 42 | self.counter[type_name]['count'] +=1 |
| 43 | for i in range(len(rate)): |
| 44 | s = rate[i] |
| 45 | |
| 46 | self.counter[type_name]['rate'][i]+=s |
| 47 | self.counter[type_name]['ratio'][i]= self.counter[type_name]['rate'][i] /self.counter[type_name]['count'] |
| 48 | |
| 49 | |
| 50 | def error_add(self,type_name,rate): |
| 51 | name = 'total' |
| 52 | self.error[name]['count']+=1 |
| 53 | |
| 54 | s = rate |
| 55 | |
| 56 | self.error[name]['rate']+=s |
| 57 | self.error[name]['ratio']= self.error[name]['rate'] /self.error[name]['count'] |
| 58 | |
| 59 | if not type_name in self.error.keys(): |
| 60 | self.error[type_name] ={'count': 0, 'rate': 0,'ratio':0} |
| 61 | self.error[type_name]['count'] +=1 |
| 62 | self.error[type_name]['rate']+=s |
| 63 | self.error[type_name]['ratio']= self.error[type_name]['rate']/self.error[type_name]['count'] |
| 64 | else: |
| 65 | self.error[type_name]['count'] +=1 |
| 66 | self.error[type_name]['rate']+=s |
| 67 | self.error[type_name]['ratio']= self.error[type_name]['rate']/self.error[type_name]['count'] |
| 68 | |
| 69 | class Counter_quality(): |
| 70 | def __init__(self): |