from l9_vector import Vector, parse_file
import re


# Aufgabe 3
class KNN:

    def __init__(self, word, classes, k=1):
        pass #implement me

    def readFile(self, c, filename):
        pass #implement me


    def convert_tfidf(self):
        pass #implement me
             



def classify(self, context_file, distance=Vector.cosine):
    return "CATEGORY_IMPLEMENT_ME_PLEASE"

def test():
    kNN = KNN('Schimmel', ['Pferd','Brot','Klavier'])
    kNN.readFile('Klavier', 'Schimmel_Klavier')    
  
    kNN.readFile('Pferd', 'Schimmel_Pferd')

    kNN.readFile('Brot', 'Schimmel_Brot')   
     
    print("Kosinus-Aehnlichkeit:")
    print('Ergebnis wiki1 (Klavier): ', kNN.classify('Schimmel_wiki1.txt'))
    print('Ergebnis wiki2 (Pferd): ', kNN.classify('Schimmel_wiki2.txt'))      
    print('Ergebnis wiki3 (Pilz):',kNN.classify('Schimmel_wiki3.txt') )

    print("tf-idf conversion...")  
    kNN.convert_tfidf() 
    print("Klassifiziere neu:")  
    print('Ergebnis wiki1 (Klavier): ', kNN.classify('Schimmel_wiki1.txt'))
    print('Ergebnis wiki2 (Pferd): ', kNN.classify('Schimmel_wiki2.txt'))      
    print('Ergebnis wiki3 (Pilz):',kNN.classify('Schimmel_wiki3.txt') )  

   

if __name__ == '__main__':
    test()
