Example #1
0
def load_difficulties():
    difficulties = difficulty.difficulties

    difficulty_list = generic_load("difficulties.dat")
    for difficulty_item in difficulty_list:
        check_required_fields(difficulty_item, \
            ('id',) + tuple(column for column in difficulty.columns), "Difficulty")

        id = difficulty_item['id']

        diff = difficulty.Difficulty()
        diff.id = id
        diff.name = ""

        for column in difficulty.columns:
            setattr(diff, column, int(difficulty_item[column]))

        for column in difficulty.list_columns:
            if column[0] in difficulty_item:
                setattr(diff, column[1], list(difficulty_item[column[0]]))
            else:
                setattr(diff, column[1], [])

        difficulties[id] = diff

    load_difficulty_defs()
Example #2
0
stopwords = set(stopwords.words('english'))
extra_stopwords = set([
    'that', '\'s', 'wa', 'thi', 'like', 'n\'t', 'would', 'ha', 'us', 'get',
    '\'m'
])
filtered = [
    w for w in filtered if w not in stopwords and w not in extra_stopwords
]

from collections import Counter
counts = Counter(filtered)

print("Unique word count is %d" % len(counts))

import difficulty
d = difficulty.Difficulty()
import unicodecsv as csv
with open('/tmp/word_difficulty_trump.csv', 'wb') as outcsv:
    writer = csv.writer(outcsv)
    writer.writerow(["word", "difficulty", "author"])
    for word in counts:
        word_difficulty = d.get_word_difficulty(word)
        print("[%s]: %d" % (word, word_difficulty))
        writer.writerow([word, word_difficulty, "Trump"])

# Rather than show word count, show percentage.
func = lambda x: 100 * x.count() / df.shape[0]

import pandas as pd
df = pd.read_csv('/tmp/word_difficulty_trump.csv')
ax = df.pivot_table(values='word', index='difficulty',
Example #3
0
    def SDifficulty(self, Key):
        LIST_D = []
        LIST_C = []
        NUM = 0

        Key = self.comboBox.currentIndex() + 1
        self.D = difficulty.Difficulty(0)
        LIST_D, LIST_C, NUM, SUM, LIST_VALUE = self.D.main(Key)
        #self.CD=Cart_diff.Cart_diff(0)
        #self.CD.main(LIST_VALUE)
        #self.label_4.setPixmap(QtGui.QPixmap(_fromUtf8("chart/foo.png")))
        print LIST_C
        Aert = ""
        if SUM <= 25:
            Aert = "Very Difficult"
        elif SUM > 25 and SUM < 75:
            Aert = "Medium"
        elif SUM >= 75:
            Aert = "Very Easy"
        self.lineEdit.setText(Aert)
        if self.Statediff == False:
            self.tableWidget = QtGui.QTableWidget(self.groupBox)
            self.tableWidget.setGeometry(QtCore.QRect(10, 70, 421, 291))
            self.tableWidget.setAutoScrollMargin(10)
            self.tableWidget.setEditTriggers(
                QtGui.QAbstractItemView.NoEditTriggers)
            self.tableWidget.setProperty("showDropIndicator", True)
            self.tableWidget.setDragEnabled(False)
            self.tableWidget.setObjectName(_fromUtf8("tableWidget"))
            self.tableWidget.setColumnCount(4)
            self.tableWidget.setRowCount(120)

        item = QtGui.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(0, item)
        item = QtGui.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(1, item)
        item = QtGui.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(2, item)
        item = QtGui.QTableWidgetItem()
        self.tableWidget.setHorizontalHeaderItem(3, item)

        for i in range(120):
            item = QtGui.QTableWidgetItem()
            self.tableWidget.setVerticalHeaderItem(i, item)
            item = QtGui.QTableWidgetItem()
            self.tableWidget.setItem(i, 0, item)
            item = QtGui.QTableWidgetItem()
            self.tableWidget.setItem(i, 1, item)
            item = QtGui.QTableWidgetItem()
            self.tableWidget.setItem(i, 2, item)
            item = QtGui.QTableWidgetItem()
            self.tableWidget.setItem(i, 3, item)

        item = self.tableWidget.verticalHeaderItem(0)
        item.setText(_translate("Dialog", "1", None))
        item = self.tableWidget.horizontalHeaderItem(0)
        item.setText(_translate("Dialog", "ข้อที่", None))
        item = self.tableWidget.horizontalHeaderItem(1)
        item.setText(_translate("Dialog", "ตอบผิด", None))
        item = self.tableWidget.horizontalHeaderItem(2)
        item.setText(_translate("Dialog", "ตอบถูก", None))
        item = self.tableWidget.horizontalHeaderItem(3)
        item.setText(_translate("Dialog", "ระดับ", None))
        __sortingEnabled = self.tableWidget.isSortingEnabled()
        self.tableWidget.setSortingEnabled(False)
        for i in range(120):

            diff = ""

            if LIST_D[i] == "ve":
                diff = "Very Easy"
            elif LIST_D[i] == "e":
                diff = "Easy"
            elif LIST_D[i] == "m":
                diff = "Medium"
            elif LIST_D[i] == "c":
                diff = "Difficult"
            elif LIST_D[i] == "vc":
                diff = "Very Difficult"

            item = self.tableWidget.item(i, 0)
            item.setText(_translate("Dialog", str(i + 1), None))
            item = self.tableWidget.item(i, 1)
            item.setText(_translate("Dialog", str(NUM - LIST_C[i]), None))
            item = self.tableWidget.item(i, 2)
            item.setText(_translate("Dialog", str(LIST_C[i]), None))
            item = self.tableWidget.item(i, 3)
            item.setText(_translate("Dialog", diff, None))

        self.tableWidget.setSortingEnabled(__sortingEnabled)
        self.Statediff = True