import json | |
def get_intersection(a: list, b: list) -> list: | |
a = [i.lower() for i in a] | |
b = [i.lower() for i in b] | |
return sorted(set(a).intersection(set(b))) | |
def not_in_intersection(a: list, b: list) -> list: | |
return sorted(set(a).union(set(b)).difference(set(a).intersection(b))) | |
def get_score(true_values: list, predicted_values: list) -> float: | |
intersection_list = get_intersection(true_values, predicted_values) | |
return len(intersection_list) / len(true_values) if len(true_values) else 0 | |
def match(present_features, not_present_features): | |
relevant_skills = len(present_features) | |
total_skills = len(present_features + not_present_features) | |
match = round(100.0 * (relevant_skills / total_skills), 2) | |
return match | |
def get_json_list_from_result(result: dict, key: str) -> list: | |
try: | |
return json.loads(result[key].strip()) | |
except json.decoder.JSONDecodeError: | |
print(key, result[key]) | |
return [] | |