Worthäufigkeiten in den Mitteilungen des DBVs zum Stichwort Nachhaltigkeit

WordCloud

Text Mining ist eine Bezeichnung für den Einsatz statistischer Verfahren, mit denen man sich einen Überblick über eine große Menge Text verschaffen kann. Von der einfachen Ermittlung von Worthäufigkeiten bis hin zu aufwändigen statistischen Modellen, z. B. für die Modellierung von Themen oder Clustering, ist vieles machbar. Wer im Internet nach Text Mining sucht, findet schnell viele Blogs mit entsprechenden Beiträgen zur Auswertung von Wahlprogrammen, Tweets oder vielen anderen Textsammlungen. Dadurch ist dieser Blogbeitrag hier übrigens inspiriert. Ich habe mir dafür einmal die Worthäufigkeiten in den Pressemitteilungen des Deutschen Bauernverbands (DBV) mit dem Stichwort „Nachhaltigkeit“ angeschaut und mit Balkendiagrammen und Wordclouds visualisiert.

Solche einfachen Techniken helfen dabei, zügig einen Überblick über große Textmengen zu bekommen. Und die Textmengen werden immer größer. Täglich schreiben und veröffentlichen zahlreiche Stellen neue Inhalte bzw. erstellen neuen Content. Automatische Verfahren der Inhaltsanalyse gewinnen daher immer weiter an Bedeutung. Die Geschäftsmodelle von Google, Twitter, Facebook und Co. wären ohne diese Verfahren nicht denkbar.

Aber nicht nur die Internetriesen nutzen automatisierte Textanalysen.  Mit Hilfe von Statistiksoftware (z. B. R) und einigen grundlegenden Verfahren des Texts Minings, ist es leicht, eigene Analysen durchzuführen. Das stelle ich nachfolgend vor.

187 Pressemitteilungen des Deutschen Bauernverbands

Zur Ausgangslage: Da ich hier im Blog in der jüngeren Vergangenheit immer wieder über das Thema Nachhaltigkeit geschrieben habe, habe ich mir diesen Begriff als Ausgangsbasis für mein Text-Mining-Beispiel vorgenommen. Da ich mich zudem auch für die Entwicklungen in der Agrar- und Ernährungswirtschaft interessiere, habe ich diesen Begriff in die Suchfunktion der Webseite des Deutschen Bauernverbands (DBV) eingegeben. Das war am 22. September 2019. Bekommen habe ich eine Zusammenstellung mit 187 Mitteilungen aus dem Pressearchiv des DBVs. Die Texte daraus sind die Grundlage für die weiteren Untersuchungen.

Grafik: Anzahl der ermittelten DBV-Meldungen mit dem Stichwort Nachhaltigkeit per Jahr
Abbildung 1: Anzahl der ermittelten DBV-Meldungen mit dem Stichwort Nachhaltigkeit per Jahr

Die älteste der 187 Mitteilungen stammt vom 14.01.2010 („Hochkarätige Politik-Talks auf dem ErlebnisBauernhof“) und die jüngste vom 04.09.2019 („Alles auf Start: Up!“). Abbildung 1 zeigt die Verteilung der Meldungen in den Jahren 2010 bis 2019.

Die Texte für die Analyse vorbereiten. Ich verwende R.

Um die Texte zu analysieren und die Worthäufigkeiten zu ermitteln, müssen die Texte so aufbereitet werden, dass sie von einer Software entsprechend verarbeitet werden können. Bestimmte Formatierungen, Emojis oder HTML-Tags beispielsweise können die Auswertung stören und müssen entfernt werden.

Ich verwende dazu und für die weiteren Auswertungen die Software R und einige auf Text Mining spezialisierte Erweiterungen, die sogenannten Pakete. In der Vergangenheit bin ich immer ganz gut mit dem Paket „tm“ zurechtgekommen. Doch in jüngster Zeit habe ich auch die Pakete „tidytext“ und „quanteda“ für mich entdeckt.

Im Internet gibt es zu allen Paketen zahlreiche Tutorials und Hilfeseiten. Ich habe daher hier darauf verzichtet, meinen Code zu veröffentlichen. Fragen dazu beantworte ich aber so gut wie möglich. Bei Bedarf reicht ein Hinweis in den Kommentaren.

Für die nächsten Schritte habe ich die 187 Texte zu einer Sammlung zusammengestellt und zu einem sogenannten Textkorpus zusammengefasst. Mit Hilfe von R habe ich diesen Korpus entsprechend aufbereitet und Satzzeichen, Zahlen sowie überflüssige Leerzeichen entfernt. Damit geht es weiter.

Worthäufigkeiten ermitteln und visualisieren

Um die Worthäufigkeit zu ermitteln und grafisch darzustellen, habe ich mit Hilfe von R den Textkorpus zu einer sogenannten Dokument-Term-Matrix umgewandelt. In einer solchen Matrix steht jede Zeile für ein Dokument. Die Spalten enthalten die im Korpus vorkommenden Begriffe sowie ihre Häufigkeit im Dokument. Berechnet man daraus die Summen jeder Spalte, erhält man wie oft ein Begriff im gesamten Korpus vorkommt. Die Summen der Zeilen geben daraüber Auskunft, wie wie viele Wörter ein Dokument enthält.

Für die grafische Darstellung der Worthäufigkeiten gibt es unterschiedliche Möglichkeiten. Listen, Tabellen, Balkendiagramme oder Wordclouds (auf deutsch: „Wortwolken“) sind mögliche Formen. Die 15 häufigsten Worte im DBV-Nachhaltigkeitskorpus sind in Abbildung 2 aufgeführt.

Abbildung 2: Worthäufigkeiten aller Worte im DBV-Nachhaltigkeitskorpus
Abbildung 2: Worthäufigkeiten aller Worte im DBV-Nachhaltigkeitskorpus

Man sieht: Allgemeine Worte wie „der“, „die“ und „und“ kommen im Korpus am häufigsten vor. Erst an 12. und 15. Stelle tauchen die Begriffe „Landwirtschaft“ und „DBV“ auf. Nachvollziehbar in einem Textkorpus der aus Mitteilungen des DBVs besteht. Wer sich mit Wortverteilungen tiefergehend auseinandersetzen möchte, sollte übrigens mal nach dem Zipfschen Gesetz googeln.

Stoppwörter entfernen und die Worthäufigkeiten erneut ermitteln

Da die häufigsten Wörter in vielen Korpora kaum oder nur wenig Informationen für eine inhaltliche Analyse tragen (s.o.), entfernt man sie in der Regel. Abbildung 3 zeigt eine erneute Auswertung des der 187 Texte. Diesmal sind die Stoppwörter nicht mehr enthalten.

Worthäufigkeiten im DBV-Nachhaltigkeits-Korpus ohne Stoppwörter
Abbildung 3: Worthäufigkeiten im DBV-Nachhaltigkeits-Korpus ohne Stoppwörter

Die Wörter „Landwirtschaft“ und „dbv“ sind jetzt die häufigsten Begriffe. Und auch der Begriff „Nachhaltigkeit“ taucht jetzt in der Liste weiter oben auf. Danach hatte ich ja auch gesucht.

Mit Hilfe der Häufigkeit eines Schlüsselbegriffs (engl. Keyword) in Bezug auf alle Worte in einem Text, kann man die (prozentuale) Keyworddichte berechnen. Das Maß wird oft in Zusammenhang mit der Suchmaschinenoptimierung (SEO) genannt, d. h. mit dem Erstellen von Inhalten, die bei Google weit oben stehen sollen.

Bei genauerer Betrachtung fällt auch auf, dass die Wörter „deutschen“ und „deutsche“ beispielsweise unterschiedliche Formen desselben Wortstamms sind. Durch weitere Umformungen am Korpus („Stemming“) kann man auch diese Formen noch zusammenfassen. Ich habe hier für dieses Beispiel darauf verzichtet.

Eine weitere Variante, um Worthäufigkeiten darzustellen, ist die Wordcloud. In Abbildung 4 sind die Top 100 ohne Stoppwörter aus dem DBV-Korpus enthalten. Anhand der Begriffe erkennt man recht deutlich, dass der Textkorpus einen engen Bezug zum deutschen Bauernverband und der deutschen Landwirtschaft hat.

Worthäufigkeiten als Wordcloud. Die 100 häufigsten Worte im DBV-Nachhaltigkeitskorpus (tf) ohne Stoppwörter
Abbildung 4: Worthäufigkeiten als Wordcloud. Die 100 häufigsten Worte im DBV-Nachhaltigkeitskorpus (tf) ohne Stoppwörter

Mit Blick auf den Informationsgehalt zum Thema Nachhaltigkeit finde ich die Begriffsliste aber noch wenig dürftig. Lässt sich dies mit dem nächsten Schritt verändern?

Wortfrequenz und die inverse Dokumenthäufigkeit (tf-idf)

Die Worthäufigkeit (engl.: term-frequency, kurz: tf) gibt an, wie oft ein Wort in einem Dokument bzw. in einem Korpus vorkommt. Sie gibt aber nicht an, wie das Vorkommen eines bestimmten Wortes über alle Dokumente verteilt ist.

Abbildung 5: Anzahl der häufigsten Worte im DBV-Nachhaltigkeitskorpus gewichtet mit tf-idf
Abbildung 5: Anzahl der häufigsten Worte im DBV-Nachhaltigkeitskorpus gewichtet mit tf-idf

Um darüber eine Aussage zu treffen, kombiniert man häufig die Worthäufigkeit („tf“) mit der inversen Dokumenthäufigkeit (engl.: inverse document frequency, kurz: „idf“). Das Maß gibt an, welche Bedeutung ein Begriff in einem Text bezogen auf eine Sammlung von Texten hat. Dadurch werden Begriffe, die seltener in einem Dokument, aber dafür in vielen Texten vorkommen, höher gewichtet. Auch das tf-idf-Maß spielt bei der SEO häufig eine gewichtige Rolle.

Mit der tf-idf-Gewichtung treten andere Wörter in den Vordergrund

Zum Ergebnis: Neben dem Namen des amtierenden Präsidenten des DBVs Joachim Rukwied (seit 2012) taucht jetzt auch der Nachname seines Vorgängers Gerd Sonnleitner auf (1997-2012). Auch das scheint plausibel, da der DBV-Nachhaltigkeitskorpus ja viele Texte aus den Jahren 2010 bis 2012 enthält.

Auch zwei weitere Namen tauchen jetzt auf. Zum einen „Bassewitz“ (Heinrich Graf von) und zum anderen „Born“ (Helmut). Graf von Bassewitz war von 2000 bis 2019 Vorsitzender des Fachausschusses Ökolandbau im Deutschen Bauernverband und Helmut Born Generalsekretär des DBVs von 1991 bis 2013. Dass ausgerechnet Namen auftauchen, könnte zum Beispiel daran liegen, dass in Pressemitteilungen Aussagen häufig in direkter und indirekter Rede durch bestimmte Personen (z. B. durch den Präsidenten) wiedergegeben werden. Das Wort „sei“ in der Liste als Form einer indirekten Rede von „sein“ unterstützt diese Vermutung.

Weitere Begriffe fallen auf: Die Worte „Biokraftstoffe“, „Umwelt“ oder „Nachhaltigkeitsstrategie“ steigen durch die tf-idf-Gewichtung im Ranking. Das Wort „Nachhaltigkeit“ selbst rutscht im Rank dagegen nach unten. Das liegt daran, dass es zwar in allen Dokumenten vorkommt, aber innerhalb der Dokumente nur wenige Male. Die dazugehörige Wordcloud der Top 100 ist in Abbildung 6 dargestellt.

Abbildung 6: Wordcloud der 100 häufigsten Worte im DBV-Nachhaltigkeitskorpus (tf-idf-gewichtet)
Abbildung 6: Wordcloud der 100 häufigsten Worte im DBV-Nachhaltigkeitskorpus (tf-idf-gewichtet)

Fazit

Das Zählen (tf) und gewichten (tf-idf) von Worthäufigkeiten in Textsammlungen sind im Text Mining erste Schritte. Ich habe hier gezeigt, wie sich der Informationsgehalt der Auswertungen verändert, wenn man bestimmte Schritte tut. Damit ist aber noch das Ende der Auswertungsmöglichkeiten erreicht. Man kann beispielsweise noch analysieren, ob ein Textkorpus eher negative oder positive Begriffe enthält oder Modelle entwickeln, mir deren Hilfe die Texte zu bestimmten Themen zugeordnet werden können. Das ist hier aber heute kein Thema mehr. Vielleicht einmal später.

Referenzen

Ingo Feinerer and Kurt Hornik (2018). tm: Text Mining Package. R package version 0.7-6. https://CRAN.R-project.org/package=tm

Silge, J., Robinson, D. (2016). “tidytext: Text Mining and Analysis Using Tidy Data Principles in R.” JOSS, 1(3). http://dx.doi.org/10.21105/joss.00037.

Christian H. Meyer
Ich bin Christian H. Meyer. Hier im Blog schreibe ich über Themen und Ideen aus den Bereichen Nachhaltigkeit, Coaching und Forschung. Und außerdem über das, was mich sonst noch interessiert. Wenn Ihnen dieser Beitrag gefällt, zögern Sie nicht, ihn zu teilen oder zu kommentieren. Fragen dazu beantworte ich gerne.

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.