Immer eine Große Liste von Substantiven (oder Adjektive) in Python NLTK; oder Python Mad Libs
Wie diese Frage, ich bin daran interessiert, eine große Liste von Wörtern, die von Wortart (eine lange Liste von Substantiven; eine Liste der Adjektive) verwendet werden programmgesteuert anderswo. Diese Antwort hat eine Lösung mit Hilfe der WordNet-Datenbank (in SQL) - format.
Gibt es einen Weg, um an eine solche Liste mit Hilfe der Korpora/tools integriert in das Python NLTK. Ich könnte eine große Menge von text, analysieren Sie diese und speichern Sie dann die Nomen und Adjektiven. Aber angesichts der Wörterbücher und andere Hilfsmittel eingebaut, ist es ein intelligenter Weg zu extrahieren Sie einfach die Wörter, die bereits in der NLTK-datasets, kodiert als Substantive/Adjektive (was auch immer)?
Dank.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist erwähnenswert, dass Wordnet ist tatsächlich eine der Korpora enthalten in der NLTK-downloader standardmäßig. So könnte man unter Umständen verwenden Sie einfach die Lösung, die Sie bereits gefunden, ohne neu zu erfinden keine Räder.
Beispielsweise könnten Sie nur so etwas wie dies tun, um alle Nomen-synsets:
Dass Beispiel geben Sie jedes Substantiv, das Sie wollen, und es wird auch Sie in die Gruppe Ihrer synsets, so Sie versuchen können, um sicher zu sein, dass Sie in den richtigen Kontext.
...list(wn.all_synsets(wn.NOUN))...
? wn.SUBSTANTIV ist eine Konstante auf 'n', aber es ist besser lesbarSollten Sie die Moby Wortarten-Projekt Daten. Seien Sie nicht fixiert auf nur mit, was direkt in NLTK standardmäßig. Es wäre wenig Arbeit, um die Dateien herunterzuladen für diese und ziemlich leicht zu analysieren, Sie mit NLTK einmal geladen.
Sah ich eine ähnliche Frage früher in dieser Woche (kann nicht finden den link), aber wie ich dann gesagt habe, ich glaube nicht, dass die Aufrechterhaltung einer Liste von Substantiven/Adjektiven/was auch immer, ist eine tolle Idee. Dies ist in Erster Linie, weil das gleiche Wort kann verschiedene Teile der Sprache, je nach Kontext.
Allerdings, wenn Sie sind immer noch tot-set auf die Verwendung dieser Listen, dann ist hier, wie ich es tun würde (ich habe nicht eine Arbeit NLTK installiert auf dieser Maschine, aber ich erinnere mich an die Grundlagen):
Hoffe, das hilft
pos_tag
führt keine neuen tagging, sondern nur die Renditen der bereits strukturierten Daten