def get_sentence_keyword_score(document, num_sentences): rake = Rake() keywords = rake.get_keywords(document) ranked_keywords = rake.generate_keyword_rank(keywords) sufficient_keywords_length = int(math.ceil(len(ranked_keywords) / 4.0)) sufficient_keywords = ranked_keywords[:sufficient_keywords_length] total_keyword_score = 0.0 # value of a keyword is its relative score value divided by the score of all keywords sentence_keyword_score = [0.0] * num_sentences for keyword in sufficient_keywords: total_keyword_score += keyword['score'] for keyword in sufficient_keywords: sentence_keyword_score[ keyword['sentence_num']] += keyword['score'] / total_keyword_score return sentence_keyword_score