MCPcopy Create free account
hub / github.com/FlyingFeather/DEA-SQL / eval_partial_match

Method eval_partial_match

single_eval.py:394–433  ·  view source on GitHub ↗
(self, pred, label)

Source from the content-addressed store, hash-verified

392 return 1
393
394 def eval_partial_match(self, pred, label):
395 res = {}
396
397 label_total, pred_total, cnt, cnt_wo_agg = eval_sel(pred, label)
398 acc, rec, f1 = get_scores(cnt, pred_total, label_total)
399 res['select'] = {'acc': acc, 'rec': rec, 'f1': f1, 'label_total': label_total, 'pred_total': pred_total}
400 acc, rec, f1 = get_scores(cnt_wo_agg, pred_total, label_total)
401 res['select(no AGG)'] = {'acc': acc, 'rec': rec, 'f1': f1, 'label_total': label_total, 'pred_total': pred_total}
402
403 label_total, pred_total, cnt, cnt_wo_agg = eval_where(pred, label)
404 acc, rec, f1 = get_scores(cnt, pred_total, label_total)
405 res['where'] = {'acc': acc, 'rec': rec, 'f1': f1, 'label_total': label_total, 'pred_total': pred_total}
406 acc, rec, f1 = get_scores(cnt_wo_agg, pred_total, label_total)
407 res['where(no OP)'] = {'acc': acc, 'rec': rec, 'f1': f1, 'label_total': label_total, 'pred_total': pred_total}
408
409 label_total, pred_total, cnt = eval_group(pred, label)
410 acc, rec, f1 = get_scores(cnt, pred_total, label_total)
411 res['group(no Having)'] = {'acc': acc, 'rec': rec, 'f1': f1, 'label_total': label_total, 'pred_total': pred_total}
412
413 label_total, pred_total, cnt = eval_having(pred, label)
414 acc, rec, f1 = get_scores(cnt, pred_total, label_total)
415 res['group'] = {'acc': acc, 'rec': rec, 'f1': f1, 'label_total': label_total, 'pred_total': pred_total}
416
417 label_total, pred_total, cnt = eval_order(pred, label)
418 acc, rec, f1 = get_scores(cnt, pred_total, label_total)
419 res['order'] = {'acc': acc, 'rec': rec, 'f1': f1, 'label_total': label_total, 'pred_total': pred_total}
420
421 label_total, pred_total, cnt = eval_and_or(pred, label)
422 acc, rec, f1 = get_scores(cnt, pred_total, label_total)
423 res['and/or'] = {'acc': acc, 'rec': rec, 'f1': f1, 'label_total': label_total, 'pred_total': pred_total}
424
425 label_total, pred_total, cnt = eval_IUEN(pred, label)
426 acc, rec, f1 = get_scores(cnt, pred_total, label_total)
427 res['IUEN'] = {'acc': acc, 'rec': rec, 'f1': f1, 'label_total': label_total, 'pred_total': pred_total}
428
429 label_total, pred_total, cnt = eval_keywords(pred, label)
430 acc, rec, f1 = get_scores(cnt, pred_total, label_total)
431 res['keywords'] = {'acc': acc, 'rec': rec, 'f1': f1, 'label_total': label_total, 'pred_total': pred_total}
432
433 return res
434
435
436def isValidSQL(sql, db):

Callers 1

eval_exact_matchMethod · 0.95

Calls 9

eval_selFunction · 0.70
get_scoresFunction · 0.70
eval_whereFunction · 0.70
eval_groupFunction · 0.70
eval_havingFunction · 0.70
eval_orderFunction · 0.70
eval_and_orFunction · 0.70
eval_IUENFunction · 0.70
eval_keywordsFunction · 0.70

Tested by

no test coverage detected