dsresumatch.evaluate_keywords ============================= .. py:module:: dsresumatch.evaluate_keywords Functions --------- .. autoapisummary:: dsresumatch.evaluate_keywords.load_baseline_keywords dsresumatch.evaluate_keywords.evaluate_keywords Module Contents --------------- .. py:function:: load_baseline_keywords() Load baseline keywords from the JSON file. This function reads a JSON file containing baseline keywords organized by categories. It flattens the categories into a single list of keywords, converting them to lowercase for uniformity. This list can be used for evaluating resumes against a standard set of keywords relevant to data science. :returns: A list of baseline keywords in lowercase, extracted from the JSON file. :rtype: list of str :raises FileNotFoundError: If the JSON file containing the baseline keywords cannot be found. :raises json.JSONDecodeError: If the JSON file is not properly formatted. .. py:function:: evaluate_keywords(cleaned_text, keywords=None, use_only_supplied_keywords=False) Evaluate the quality of a resume by comparing its content against a set of predefined or user-supplied keywords. This function assesses whether the resume contains relevant keywords that match the criteria for a "good data science resume." Users can provide their own keywords or combine them with a default set of predefined keywords. :param cleaned_text: The cleaned text content of the resume. :type cleaned_text: str :param keywords: A list of keywords to compare against the resume content. If not provided, only the baseline keywords will be used. If `use_only_supplied_keywords` is set to True without supplying keywords, no keywords will be used, and the function will return an empty result. :type keywords: list of str, optional :param use_only_supplied_keywords: A flag to determine whether to use only the supplied keywords or to combine them with a default set of predefined keywords. Defaults to False. :type use_only_supplied_keywords: bool, optional :returns: A list of keywords (from either the baseline or provided keywords) that do not appear in the `cleaned_text`. :rtype: list of str .. rubric:: Examples >>> evaluate_keywords("software development project management agile methodologies", ["software", "agile", "teamwork"]) ['teamwork'] >>> evaluate_keywords("data analysis machine learning statistical modeling", use_only_supplied_keywords=False) ['teamwork', 'communication']