Churn Emails – Count Number Domain
Write a function count_message_from_domain
which reads the file /cxldata/datasets/project/mbox-short.txt
.
This function builds a histogram using a dictionary to count how many messages have come from each domain(Instead of from email address), and returns the dictionary.
If your logic is correct then your function should return below dictionary
{'uct.ac.za': 6,
'media.berkeley.edu': 4,
'umich.edu': 7,
'iupui.edu': 8,
'caret.cam.ac.uk': 1,
'gmail.com': 1}
Ans:
import re
def count_message_from_domain():
with open("/cxldata/datasets/project/mbox-short.txt") as f:
domains = [re.findall('@([^\s]*)',i)[0] for i in f if i.startswith('From ')]
dic = {}
for domain in domains:
dic[domain] = domains.count(domain)
return dic