Warning
This page is located in archive. Go to the latest version of this course pages.

This is an old revision of the document!


Spam filter - step 1

We are going to create a function, which can read the information from files !truth.txt or !prediction.txt into the dictionary data structure.

Preparation

Working with a dictionary

Working with (text) files

The usage of section ''if __name__ == "__main__":''

Method ''split()'' of string values

Reading classification from a file

Task:

  • In a module called utils.py, create a function read_classification_from_file() that will read the mail classes from a text file.

Why do we need it:

  • We will need this function if we want to create a learning filter, and during the evaluation of the filter quality.

Specifications

Function read_classification_from_file() (in module utils.py) has to conform to the following specifications:

Input The path to the text file (most likely either !truth.txt or !prediction.txt)
Output A dictionary containing either SPAM or OK label for each filename in email corpus.

The function loads a text file contaning a pair of strings per line, separated by single space, like this:

email01 OK
email02 OK
email03 SPAM
email1234 OK
...
and creates a dictionary (the order of individual “rows” in the following listing is not important):
{'email1234': 'OK', 'email03': 'SPAM', 'email02': 'OK', 'email01': 'OK'}

If the file is empty, it returns an empty dictionary.

courses/be5b33prg/homeworks/spam/step1.1444913332.txt.gz · Last modified: 2015/10/15 14:48 by xposik