Tagging

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
MarcelF6
User
Beiträge: 226
Registriert: Samstag 3. März 2012, 21:30

Guten Abend miteinander

Ich habe eine Frage: Wie verwendet man den TreeTagger (in einer Funktion), um von einem Wort die Grundform zu finden?
Beispiel: Die Funktion erhält als Input die Worte "Sie sind viele Male gefahren" als Liste.
Ausgegeben sollen dann nur noch die Grundformen werden (mithilfe des TreeTaggers); also: "Sie, sein, viel, Mal, fahren".

Vielen Dank für die Hilfe.
Marcel
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Ich würde ja einfach nach "treetagger python" suchen, aber wahrscheinlich ist ein Klick auf den ersten Treffer schon zu kompliziert...
Das Leben ist wie ein Tennisball.
MarcelF6
User
Beiträge: 226
Registriert: Samstag 3. März 2012, 21:30

:shock:
Recht hast du.
Noch eine Frage: Woran könnte es liegen, dass ich nach der Eingabe "from treetagger import TreeTagger" folgenden Fehler bekomme:
" No module named treetagger" ?

Der TreeTagger ist eigentlich korrekt installiert.

Vielen Dank,
Marcel
Zuletzt geändert von MarcelF6 am Samstag 27. April 2013, 01:18, insgesamt 1-mal geändert.
BlackJack

@MarcelF6: Woran das liegt, dass Du bei ``form`` keinen Syntaxfehler bekommst? Keine Ahnung. :twisted:
MarcelF6
User
Beiträge: 226
Registriert: Samstag 3. März 2012, 21:30

Sorry, das war ein Tippfehler hier - der Fehler bleibt derselbe.
(habs nicht via copy-paste gemacht)
BlackJack

@MarcelF6: Was bringt Dich denn auf die Idee, dass das Modul so heisst? Und was hast Du alles installiert? Und wie genau? Um welchen TreeTagger geht es? Und welche Python-Anbindung?
xeike
User
Beiträge: 83
Registriert: Donnerstag 28. Februar 2013, 09:58

MarcelF6 hat geschrieben:Noch eine Frage: Woran könnte es liegen, dass ich nach der Eingabe "from treetagger import TreeTagger" folgenden Fehler bekomme:
" No module named treetagger" ?

Der TreeTagger ist eigentlich korrekt installiert.
Könnte es sein, dass du verschiedene Python-Versionen hast?

Starte mal in der Shell python2.x und versuche treetagger zu importieren. Probiere dann dasselbe mit python3.x. Sonst ist treetagger vielleicht doch nicht korrekt installiert.

Xe
MarcelF6
User
Beiträge: 226
Registriert: Samstag 3. März 2012, 21:30

Danke für Eure Antworten!
Die Installation muss eigentlich korrekt sein, denn folgender Testaufruf liefert die gewünschte Ausgabe:
echo 'Ihr seid nett.' | cmd/tagger-chunker-german-utf8

Bezüglich der python-Version: Ich verwende nur die default-Version 2.7.3.

Es geht um folgenden TreeTagger (allso so installiert wie es in der Anleitung steht):
http://www.cis.uni-muenchen.de/~schmid/ ... reeTagger/

Und die "Idee", dass das Modul so heisst, habe ich von hier:
https://github.com/miotto/treetagger-python

Vielen Dank für die Hilfe.
xeike
User
Beiträge: 83
Registriert: Donnerstag 28. Februar 2013, 09:58

Du musst treetagger.py installiert haben, einschließlich seiner Abhängigkeiten. Ziehe diese Datei vielleicht einmal in dein Projekt-Verzeichnis, vielleicht liegt es "nur" am Pfad, dass die Datei nicht gefunden wird.


Xe
MarcelF6
User
Beiträge: 226
Registriert: Samstag 3. März 2012, 21:30

Von welcher 'treetagger.py' sprichst du genau?
Der gesamte treetagger-Ordner befindet sich bereits im Projektverzeichnis...nur der Aufruf direkt in python funktioniert noch nicht :(
BlackJack

@MarcelF6: Ähm, du verlinkst https://github.com/miotto/treetagger-python und fragst dann welche ``treetagger.py`` gemeint ist‽ Vielleicht genau die, die man dort herunterladen kann, und die neben ``README.md`` die *einzige* Datei in dem Projekt ist‽ Wie hast Du die denn installiert? Die muss natürlich in einem Pfad liegen, in dem Python sie finden kann wenn man den ``import`` ausführt. Also im aktuellen Arbeitsverzeichnis oder irgendwo in `sys.path`.
MarcelF6
User
Beiträge: 226
Registriert: Samstag 3. März 2012, 21:30

Äh sh..., das file habe ich angeschaut und mich eben gefragt, ob es nicht möglich ist, nur mit den Daten von http://www.cis.uni-muenchen.de/~schmid/ ... reeTagger/ die Grundformen von Wörtern zu finden. Das müsste ja eigentlich auch so klappen, oder?
Also man kann ja auch ausserhalb von python via 'echo 'hallo' | cmd/...' die Grundform finden; also müsste das doch auch innerhalb von python ohne das gesamte treetagger.py-Skript gehen. Aber wie?
xeike
User
Beiträge: 83
Registriert: Donnerstag 28. Februar 2013, 09:58

MarcelF6 hat geschrieben:Das müsste ja eigentlich auch so klappen, oder?
Wofür brauchst du dann Python, wenn es doch auch so geht?

Entweder du willst das mit Python machen, dann installiere das Modul ordentlich oder nutze die Shell, dafür brauchst du Python nicht.

Falls du os.system() suchst, das gibt es hier:
http://docs.python.org/3/library/os.html#os.system

Aber... es führt dich direkt zur dunklen Seite der Macht. :lol:

Xe
BlackJack

@xeike: Wenn Du weist, dass es die dunkle Seite ist, warum erwähnst Du es dann *und* unterschlägst auch noch das Licht: das `subprocess`-Modul‽
MarcelF6
User
Beiträge: 226
Registriert: Samstag 3. März 2012, 21:30

@xeike:
Weil ich innerhalb eines python-Skripts die Grundformen der Worte bestimmen sollte.
Zum Testen reicht die Shell natürlich aus.

@BlackJack:
subprocess-Modul? Wie würde das funktionieren?
Antworten