示例#1
0
文件: main.py 项目: MJoshi111/IM13
def evaluate():
    text = input("Text file: ")
    print("")

    try:
        print("Running text evaluation...\n")
        with open("./data/" + text, 'r') as textFile:
            EvaluateText.evaluate(textFile)

    except IOError:
        print("File not found. Returning to main menu...\n")
def do_test(tf, vf):
    try:
        print("\nRunning text evaluation...\n")
        with open(tf, 'r') as textFile:
            print ("text found")
            with open(vf, 'r') as valueFile:
                print ("values found")
                EvaluateText.evaluate(textFile, valueFile)

    except IOError:
        print("File not found. Returning to main menu...\n")
def test():
    text = input("Text file: ")
    values = input("Value file: ")
    print("")

    try:
        print("\nRunning text evaluation...\n")
        with open("./data/" + text, 'r') as textFile:
            with open("./data/" + values, 'r') as valueFile:
                EvaluateText.evaluate(textFile, valueFile)

    except IOError:
        print("File not found. Returning to main menu...\n")
 def button3():
     answer = self.MessageBox(window=window)
     text = txt_file.get()
     values = value_file.get()
     
     if answer=='yes' and text != '':
         window.destroy()
         try:
             with open(text, 'r') as textFile:
                 with open(values, 'r') as valueFile:               
                     EvaluateText.evaluate(textFile, valueFile)
                     
                     
         except IOError:
                 MsgBox = tkMessageBox.showinfo('Error','File not found. Returning to main menu',parent=window)
示例#5
0
def predictEmotion():
    varStatusBar.set("")

    with open("./data/Priors.csv", "r") as priorFile:
        priors = priorFile.readline().strip().split(',')[1:]
        priors = [log10(float(x)) for x in priors]
    predValues = []
    unfound = []

    wf = WordFilter.WordFilter()
    words = varGuiInput.get()
    #print "Input:", words
    words = wf.filterWords(words)

    #print "Tokens:", words
    for word in words:
        try:
            values = EvaluateText.evaluateWord(word)
        except IOError:
            varStatusBar.set("WordMap not found. Please train system first.")
            raise
        if values is not None:
            predValues.append(values)
        else:
            unfound.append(word)

    predValues = map(sum, zip(*predValues))
    predProb = map(sum, zip(priors, predValues))
    predEmotion = EvaluateText.guessEmotion(predProb)
    varGuiOutput.set(predEmotion)

    #print "Unfound:", unfound
    print "Prob:", ', '.join([('%.2f') % x for x in predProb])

    max = 10
    max = getBarScale(predProb)

    str = "Input:", words, "Tokens:", words, "Unfound:", unfound, " ", "Prob:", ', '.join(
        [('%.2f') % abs(float("{0:.2f}".format(x)) + max) for x in predProb])
    varStatusBar.set(str)

    iterable = ([abs(float("{0:.2f}".format(x)) + max) for x in predProb])
    emotions = np.fromiter(iterable, float)

    objects = ("Empty", "Sadness", "Enthusiasm", "Neutral", "Worry",
               "Surprise", "Love", "Fun", "Hate", "Happiness", "Boredom",
               "Relief", "Anger")
    y_pos = np.arange(len(objects))

    fig = plt.figure(figsize=(13, 6))
    plt.bar(np.asarray(y_pos, dtype='float'),
            emotions,
            align='center',
            alpha=0.5,
            color="blue")
    plt.xticks(y_pos, objects)
    plt.yticks([])

    canvas = FigureCanvasTkAgg(fig, master=guiBox)
    canvas.get_tk_widget().grid(row=4, columnspan=2)
    canvas.draw()