Programmieren mit Python lernen: Erste Schritte mit Beispielen aus der Soziolinguistik

Als Sozialwissenschaftler*in sollten Sie sich nicht vom Programmieren abschrecken lassen. Denn die Kombination von sozialwissenschaftlichen Datenanalyse-, Methoden- und Theoriekompetenzen, gepaart mit Programmierkenntnissen, ist derzeit sehr auf dem Arbeitsmarkt gefragt (Englisch: computational sociolinguistics und natural language processing). Gerade dann, wenn mit Data Scientists zusammengearbeitet wird, wird Kommunikation ermöglicht, wenn Sie in groben Zügen verstehen, was diese tun. Zudem werden die Ergebnisse valider, wenn Sie als Sozialwissenschaftler*innen die Interpretation der Daten (mit-)gestalten, da Sie für Analyse sozialer Situationen ausgebildet sind – so wie Data Scientists für Programmieren, Datenbankenbau usw.

Warum erzählen wir Ihnen das? Durch das Schreiben des Buches Qualitative und quantitative Inhaltsanalyse: digital und automatisiert (Open Access) haben wir uns sehr intensiv mit der Nutzung von Software und Programmierungen beschäftigt, und wie diese für sozialwissenschaftliche Methoden anwendbar sind. Das Handbuch zeigt, dass nicht nur in der Statistik (z. B. mit R bzw. in RStudio), sondern auch in der textbasierten Inhaltsanalyse Programmierkenntnisse von großem Nutzen sind. Gleichzeitig stellen wir in unseren Lehrveranstaltungen in der Soziologie immer wieder fest, dass es große Berührungsängste mit der Programmierung gibt, diese möchten wir durch diesen Blogbeitrag etwas abbauen – der Berg ist gar nicht so hoch, wie Sie denken. Wir haben Ihnen eine Kurzanleitung zusammengebaut, mit der Sie an einem Beispiel lernen können, wie Sie Python nutzen und selbst programmieren können, um automatische inhaltsanalytische Auswertungen vorzunehmen.

In unserem Beispiel haben wir Funktionen von AntConc mit Python nachgebaut. AntConc ist ein Programm, mit dem Sie soziolinguistische Auswertungen vornehmen können, wie z. B. das Auszählen von Wörtern (wenn Sie mehr zu dem Programm und dessen Nutzung erfahren wollen schauen Sie hier vorbei: https://sozmethode.hypotheses.org/1240).

Wie gehen Sie nun vor:

  • Bitte öffnen Sie Spyder im Anaconda-Ordner, welcher z. B. auf Windowscomputern bei Programme im Startmenü zu finden ist, um die Python-Programmierungen zu öffnen. Im selben Ordner finden Sie beispielsweise auch Anaconda Prompt, welches Sie zum Installieren weiterer Softwarepakete benötigen. Wenn Sie Spyder geöffnet haben, werden Sie feststellen, dass die Ordnerstruktur, in der die Dateien abgerufen und gespeichert werden, bereits von uns angelegt ist. Sie müssen lediglich die Zeile austauschen, in dem root definiert wird, also der Pfad, von dem aus der Python-Code durch Ihre Dateien manövrieren wird. Eine Einleitung wie, finden Sie in der Python-Anleitung.
  • So, die Grundschritte sind gemacht. Nun eine kurze Erklärung zur Datengrundlage, die als Beispiel dient. Für die beispielhafte soziolinguistische Analyse verwenden wir die Bundestagswahlprogramme der seit 1980 (fast) durchgängig im deutschen Bundestag vertretenen Parteien CDU/CSU, FDP, DIE GRÜNEN und SPD sowie AfD (seit 2017) und DIE LINKE (seit 1998). Die Bundestagswahlprogramme wurden im Web recherchiert, als PDF-Dateien heruntergeladen und dann in txt-Dateien konvertiert. Anstatt der Grünen Wertordnung (Thévenot et al. 2011) in der Anleitung zu AntConc  verwenden wir hier im Beispiel die Sozialistische Wertordnung (Schneijderberg 2022). Sie merken, wir nutzen soziologische Theorie, um die Auswertung anzuleiten, und lassen uns nicht einfach nur irgendwelche Zusammenhänge auswerfen. Wir nutzen also die zentralen Schlagworte der Sozialistischen Wertordnung zur Erschließung der Bundestagswahlprogramme. Das heißt wir brauchen eine Schlagwort- bzw. Suchwortliste, welche im ZIP-Ordner verfügbar ist.
  • Das im ZIP-Ordner verfügbare Beispiel der Python Programmierung verwendet für die Schlagwortsuche das Wort „sozial“ (zu Übungszwecken können Sie andere Suchworte aus der Schlagwortliste verwenden). Um Verzerrungen bei den Ergebnissen der Häufigkeitsauszählungen zu vermeiden, müssen für die Ergebnisdarstellung (z. B. als Tabelle und/oder Abbildung) auch eine STOP-Wortliste erstellen. Beispielsweise würde die Schlagwortsuche nach „sozial“ durch den ausbuchstabierten Namen der SPD verzerrt, was durch die STOP-Wortliste mit Inhalt „sozial-demokrat*“, „sozialdemokrat*“ usw. verhindert wird. Bitte beachten Sie diese und weitere Erklärungen im Python-Programmcode. Weitere Erklärungen finden Sie in Kapitel 10.2.2.2 Stopwords und Wortartefakte entfernen und zu Lemmatisierung als Alternative zu Suchworten in/bei Box 6.5 in Kapitel 6.4.2 Suchworte in Kategorien und Kodes überführen im Methodenhandbuch Qualitative und quantitative Inhaltsanalyse: digital und automatisiert (Open Access).

Der Python Programmcode ist so übersichtlich und (hoffentlich) gut nachvollziehbar erklärt, dass Sie die Programmierungen für einen anderen Text-Korpus anpassen können. Selbstverständlich könnten Sie für Ihre Analyse statt Python auch AntConc verwenden. Allerdings können Sie in AntConc weder Tabellen noch so schöne Abbildungen zur Übersicht erstellen wie diese:

Hat Ihnen das Programmieren mit Python Spaß gemacht? Im Methodenhandbuch Qualitative und quantitative Inhaltsanalyse: digital und automatisiert  (Open Access) werden weitere Python Programmierungen in Kapitel 10 „Sentiment-Analyse als induktiv-quantitative Inhaltsanalyse“ und Kapitel 11 „Topic Modeling mittels Latent Dirichlet Allocation” vorgestellt.

Literaturverweise

Schneijderberg, C. (2022): Socialism Order of Worth and Analytical Adequacy Axiom. Human Studies 45: 283-308, https://doi.org/10.1007/s10746-022-09629-3 (Open Access).

Schneijderberg, C., Wieczorek, O. & Steinhardt, I. (2022): Qualitative und quantitative Inhaltsanalyse: digital und automatisiert. Eine Einführung mit empirischen Beispielen und Softwareanwendungen. Weinheim: Belz-Juventa, https://content-select.com/de/portal/media/download_oa/9783779970378/?client_id=406 (Open Access).

Thévenot, L., Moody, M., & Lafaye, C. (2011/2000): Formen der Bewertung von Natur: Argumente und Rechtfertigungen im französischen und US-amerikanischen Umweltdebatten. S. 70-97 in: Diaz-Bone, R. (Hg.): Soziologie der Konventionen. Grundlagen einer pragmatischen Anthropologie. Frankfurt am Main: Campus Verlag.

Cite this article as: Christian Schneijderberg & Oliver Wieczorek, “Programmieren mit Python lernen: Erste Schritte mit Beispielen aus der Soziolinguistik,” in Sozialwissenschaftliche Methodenberatung, 14/11/2022, https://sozmethode.hypotheses.org/1852.


Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

Suche in OpenEdition Search

Sie werden weitergeleitet zur OpenEdition Search