NLP
[OKCUPID] Term Frequency
Say you are given a text document in the form of a string with the following sentences:
Input
document = "I have a nice car with a nice tires"
Output
{ "I":0.11, "have":0.11, "a":0.22, "nice":0.22, "car": 0.11, "with":0.11, "tires":0.11 }
Write a program in python to determine the TF (term frequency) values for each term of this document.
Answer
# term freq = freq of term 't' in doc 'd' / total terms in 'd'
def tf(doc):
temp_list = doc.split(" ") # split terms
final_dict = {} # store final dictionary with term freq
for i in temp_list:
if i not in final_dict.keys(): # check if term is already present in dict
final_dict[i] = round(temp_list.count(i)/len(temp_list),2) # calculating tf
return final_dict
tf("I have a nice car with a nice tires")
Last updated