Wortanalyse und Bewertung aus einer Datei Python
Ich mache Wort für Wort eine Analyse eines Satzes wie
"Hey da !! Dies ist ein ausgezeichneter Film ???"
Ich habe viele Sätze wie oben. Ich habe eine riesige Dataset-Datei wie unten gezeigt, in der ich schnell nachsehen muss, ob das Wort existiert. Wenn dies der Fall ist, werden die Ergebnisse analysiert und in einem Wörterbuch gespeichert, z. B. aus der Datei des Worts die Ergebnisse des letzten Worts des Satzes, des ersten Worts des Satzes usw. abgerufen.
satz [i] => Hey da !! Das ist ein ausgezeichneter Film ??? satz [0] = Hey, satz [1] = da !! satz [2] = Dies und so weiter.
Hier ist der Code:
def unigrams_nrc(file):
for line in file:
(term,score,numPos,numNeg) = re.split("\t", line.strip())
if re.match(sentence[i],term.lower()):
#presence or absence of unigrams of a target term
wordanalysis["unigram"] = found
else:
found = False
if found:
wordanalysis["trail_unigram"] = found if re.match(sentence[(len(sentence)-1)],term.lower()) else not(found)
wordanalysis["lead_unigram"] = found if re.match(sentence[0],term.lower()) else not(found)
wordanalysis["nonzero_sscore"] = float(score) if (float(score) != 0) else 0
wordanalysis["sscore>0"] = (float(score) > 0)
wordanalysis["sscore"] = (float(score) != 0)
if re.match(tweet[len(sentence)-1],term.lower()):
wordanalysis["sscore !=0 last token"] = (float(score) != 0)
Hier ist die Datei (mehr als 4000 Wörter in dieser Datei):
#fabulous 7.526 2301 2
#excellent 7.247 2612 3
#superb 7.199 1660 2
#perfection 7.099 3004 4
#terrific 6.922 629 1
#magnificent 6.672 490 1
#sensational 6.529 849 2
#heavenly 6.484 2841 7
#ideal 6.461 3172 8
#partytime 6.111 559 2
#excellence 5.875 1325 6
@thisisangel 5.858 217 1
#wonderful 5.727 3428 18
elegant 5.665 537 3
#perfect 5.572 3749 23
#fine 5.423 2389 17
excellence 5.416 279 2
#realestate 5.214 114 1
bicycles 5.205 113 1
Ich wollte wissen, ob es einen besseren Weg gibt, dies zu tun. Besser definieren: Schneller, weniger Code und elegant. Ich bin neu in Python und weiß, dass dies nicht der beste Code ist. Ich habe ungefähr 4 Dateien, durch die ich gehen und die Partitur überprüfen muss, daher möchte ich diese Funktion auf die bestmögliche Weise implementieren.