def __disambiguate_with_lexicon(self, docs, lexicon, hiddenWords):
        """ Teostab lemmade leksikoni järgi mitmeste morf analüüside 
            ühestamise - eemaldab üleliigsed analüüsid;
            Toetub ideele "üks tähendus teksti kohta": kui mitmeseks jäänud 
            lemma esineb tekstis/korpuses ka mujal ning lõppkokkuvõttes 
            esineb sagedamini kui alternatiivsed analüüsid, siis tõenäoliselt
            see ongi õige lemma/analüüs;
        """
        for d in range(len(docs)):
            for w in range(len(docs[d][WORDS])):
                word = docs[d][WORDS][w]
                # Jätame vahele nn peidetud sõnad
                if (d, w) in hiddenWords:
                    continue
                # Vaatame vaid mitmeseks jäänud analüüsidega sõnu
                if len(word[ANALYSIS]) > 1:
                    #  1) Leiame suurima esinemissageduse mitmeste lemmade seas
                    highestFreq = 0
                    for analysis in word[ANALYSIS]:
                        lemma = analysis[ROOT]+'ma' if analysis[POSTAG]=='V' else analysis[ROOT]
                        if lemma in lexicon and lexicon[lemma] > highestFreq:
                            highestFreq = lexicon[lemma]
                    if highestFreq > 0:
                        #  2) Jätame välja kõik analüüsid, mille lemma esinemissagedus
                        #     on väiksem kui suurim esinemissagedus;
                        toDelete = []
                        for analysis in word[ANALYSIS]:
                            lemma = analysis[ROOT]+'ma' if analysis[POSTAG]=='V' else analysis[ROOT]
                            freq = lexicon[lemma] if lemma in lexicon else 0
                            if freq < highestFreq:
                                toDelete.append(analysis)
                        for analysis in toDelete:
                            word[ANALYSIS].remove(analysis)
def __disambiguate_with_lexicon ( self , docs , lexicon , hiddenWords ) : for d in range ( len ( docs ) ) : for w in range ( len ( docs [ d ] [ WORDS ] ) ) : word = docs [ d ] [ WORDS ] [ w ] if ( d , w ) in hiddenWords : continue if len ( word [ ANALYSIS ] ) > 1 : highestFreq = 0 for analysis in word [ ANALYSIS ] : lemma = analysis [ ROOT ] + 'ma' if analysis [ POSTAG ] == 'V' else analysis [ ROOT ] if lemma in lexicon and lexicon [ lemma ] > highestFreq : highestFreq = lexicon [ lemma ] if highestFreq > 0 : toDelete = [ ] for analysis in word [ ANALYSIS ] : lemma = analysis [ ROOT ] + 'ma' if analysis [ POSTAG ] == 'V' else analysis [ ROOT ] freq = lexicon [ lemma ] if lemma in lexicon else 0 if freq < highestFreq : toDelete . append ( analysis ) for analysis in toDelete : word [ ANALYSIS ] . remove ( analysis )
Teostab lemmade leksikoni järgi mitmeste morf analüüside 
            ühestamise - eemaldab üleliigsed analüüsid;
            Toetub ideele "üks tähendus teksti kohta": kui mitmeseks jäänud 
            lemma esineb tekstis/korpuses ka mujal ning lõppkokkuvõttes 
            esineb sagedamini kui alternatiivsed analüüsid, siis tõenäoliselt
            see ongi õige lemma/analüüs;