Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
a9f7aac
Fix grammar and spelling in README
DanilSko Sep 2, 2026
17084bb
Fix outdated ß-spelling: Meßoperationen -> Messoperationen
DanilSko Sep 2, 2026
a78b63f
Fix duplicate list numbering (two items both numbered 5.)
DanilSko Sep 2, 2026
aaa7c65
Fix spelling and stray double space
DanilSko Sep 2, 2026
b07a773
Fix spelling, grammar, and punctuation
DanilSko Sep 2, 2026
f5f4d6c
Fix capitalization and dash consistency (Leichte Sprache, en-dash)
DanilSko Sep 2, 2026
288040e
Fix outdated ß-spelling: Meßvorgang -> Messvorgang (2x)
DanilSko Sep 2, 2026
db438dc
Fix duplicated word and Elemente misspellings
DanilSko Sep 2, 2026
cc76a38
Fix adjective agreement and duplicated trailing text
DanilSko Sep 2, 2026
5d5237f
Fix grammar and metadata example inconsistency
DanilSko Sep 2, 2026
f7599b0
Fix adjective agreement: epistemische Objekt -> epistemisches Objekt
DanilSko Sep 2, 2026
0094a9b
Fix dative plural agreement errors (Formaten, ausgewählten, Kapiteln,…
DanilSko Sep 2, 2026
c1e50b3
Fix grammar, typos, and broken code fence
DanilSko Sep 2, 2026
9b0d4de
Fix anglicism: Attributes -> Attributen
DanilSko Sep 2, 2026
077eb4c
Fix subject-verb agreement: Die Attribute dienen
DanilSko Sep 2, 2026
d6406a3
Fix typos, wrong variable reference, and broken </br> tags in notebook
DanilSko Sep 2, 2026
84ca5d7
Fix adjective agreement: automatisierten -> automatisierte Extraktion
DanilSko Sep 2, 2026
b63feb2
Fix spelling, stray double space, and dash consistency
DanilSko Sep 2, 2026
e8b78d9
Align spelling: Webscraping -> Web-Scraping
DanilSko Sep 2, 2026
514ee31
Align spelling: Web Scraping -> Web-Scraping (2x)
DanilSko Sep 2, 2026
8ea6e84
Fix typo and align Web-Scraping spelling in notebook
DanilSko Sep 2, 2026
88954dd
Fix hevorgehoben -> hervorgehoben
DanilSko Sep 2, 2026
4772d95
Fix stray space: Fehlextr aktionen -> Fehlextraktionen
DanilSko Sep 2, 2026
4709bb8
Fix thousands-separator formatting in corpus size figure
DanilSko Sep 2, 2026
4f633bb
Fix grammar: vorherigen Kapitel, hervorgehoben
DanilSko Sep 2, 2026
84d9908
Fix spelling, grammar, and malformed HTML comment
DanilSko Sep 2, 2026
409bef9
Fix invalid German word: Gleichverteilheit -> Gleichmäßigkeit
DanilSko Sep 2, 2026
de3a53d
Fix pronoun number agreement: Diese sind -> Dieses ist
DanilSko Sep 2, 2026
2ca158e
Fix dative case: Indexe -> Indexen in 4 dative-governed instances
DanilSko Sep 2, 2026
382188b
Fix typos in analysis notebook
DanilSko Sep 2, 2026
666e598
Fix typos, broken </br> tags, and wrong GitHub link in visualization …
DanilSko Sep 2, 2026
14576b6
Fix outdated ß-spelling: Meßvorgang -> Messvorgang
DanilSko Sep 2, 2026
09b0d98
Fix pronoun capitalization: Sie -> sie (referring to die Literatur, n…
DanilSko Sep 2, 2026
f85bace
Fix broken HTML tag, stray space, and notation inconsistencies
DanilSko Sep 2, 2026
d13205a
Align gender-inclusive notation: Autor*innen -> Autor:innen
DanilSko Sep 2, 2026
beb7f31
Fix grammar: Verbundpartnern, Datenflusses
DanilSko Sep 2, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,14 @@ Anhand modellhafter Forschungsfragen werden für die drei Datentypen Bewegtes Bi

## Nutzung dieser OER

Sie können dieses JupyterBook zu Lehr- und Lernzwecken verwenden. Sie können sie zudem teilen und bearbeiten unter der Bedingung der Nennung der Autor:innen und der gleichen Lizenzierung. Weitere Informationen dazu entnehmen Sie bitte den <a href="https://github.com/quadriga-dk/Text-Fallstudie-2/blob/main/LICENSE.md" target="_blank">Lizenzhinweisen</a>.
Sie können dieses JupyterBook zu Lehr- und Lernzwecken verwenden. Sie können es zudem teilen und bearbeiten unter der Bedingung der Nennung der Autor:innen und der gleichen Lizenzierung. Weitere Informationen dazu entnehmen Sie bitte den <a href="https://github.com/quadriga-dk/Text-Fallstudie-2/blob/main/LICENSE.md" target="_blank">Lizenzhinweisen</a>.

## Inhalt der OER
Diese OER vermittelt Methoden zur automatische Erstellung, Aufbereitung und Analyse eines Textkorpus. Im Zentrum steht die Frage, wie sich die kommunikative Barrierefreiheit des Berliner Senats im Zeitraum von 2011 bis März 2025 entwickelt hat. Die Kommunikation des Senats wird an Hand von Pressemitteilungen untersucht. Der Fokus des Lehrbuchs liegt auf der Korpuserstellung mittels Web-Scraping und HTML-Parsing sowie der quantitativen Analyse von Textkomplexität. Die OER ist in sieben Kapitel aufgeteilt: Es wird zuerst in die Fragestellung und deren Operationalisierung eingeführt, dann werden Korpora als epistemische Objekte und HTML als digitales Textformat erläutert, danach folgt eine Einführung in Web-Scraping als Methode zum Korpusaufbau, die praktische Korpuserstellung wird durchgeführt und abschließend wird eine quantitative Analyse der Textkomplexität auf dem erstellten Korpus ausgeführt.
Diese OER vermittelt Methoden zur automatischen Erstellung, Aufbereitung und Analyse eines Textkorpus. Im Zentrum steht die Frage, wie sich die kommunikative Barrierefreiheit des Berliner Senats im Zeitraum von 2011 bis März 2025 entwickelt hat. Die Kommunikation des Senats wird anhand von Pressemitteilungen untersucht. Der Fokus des Lehrbuchs liegt auf der Korpuserstellung mittels Web-Scraping und HTML-Parsing sowie der quantitativen Analyse von Textkomplexität. Die OER ist in sieben Kapitel aufgeteilt: Es wird zuerst in die Fragestellung und deren Operationalisierung eingeführt, dann werden Korpora als epistemische Objekte und HTML als digitales Textformat erläutert, danach folgt eine Einführung in Web-Scraping als Methode zum Korpusaufbau, die praktische Korpuserstellung wird durchgeführt und abschließend wird eine quantitative Analyse der Textkomplexität auf dem erstellten Korpus ausgeführt.


## Ansprechpartner:innen

QUADRIGA ist ein Verbundprojekt mehrerer Institutionen, das von der Universität Potsdam koordiniert wird. Partner sind die Fachhochschule Potsdam, die Filmuniversität Babelsberg, das Fraunhofer FOKUS, die Freie Universität Berlin, die Humboldt-Universität zu Berlin, die Technische Universität Berlin und die Gesellschaft für Informatik.

Fragen und Feedback zu dieser OER können Sie uns sowohl über GitHub Issues als auch über Email zukommen lassen.
Fragen und Feedback zu dieser OER können Sie uns sowohl über GitHub Issues als auch über E-Mail zukommen lassen.
22 changes: 3 additions & 19 deletions corpus_analysis/corpus-analysis_analysis.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -47,17 +47,7 @@
"id": "d3aab470-ab59-4e18-b0b5-60d4815bac55",
"metadata": {},
"outputs": [],
"source": [
"# import libraries for table processing and for compuation of readability metrics\n",
"from pathlib import Path\n",
"from multiprocessing import Pool, cpu_count\n",
"from functools import partial\n",
"import requests\n",
"\n",
"import pandas as pd\n",
"import textstat\n",
"textstat.set_lang(\"de\")"
]
"source": "# import libraries for table processing and for computation of readability metrics\nfrom pathlib import Path\nfrom multiprocessing import Pool, cpu_count\nfrom functools import partial\nimport requests\n\nimport pandas as pd\nimport textstat\ntextstat.set_lang(\"de\")"
},
{
"cell_type": "markdown",
Expand Down Expand Up @@ -246,11 +236,7 @@
"cell_type": "markdown",
"id": "0d11521a-432e-4529-8fe6-80266480c873",
"metadata": {},
"source": [
"## Textkomplexität berechnen \n",
"Im folgenden berechnen wir mittels vier unterschiedlicher Metriken die Textkomplexität. Alle Metriken verwenden für die Berechnung des Komplexitätsscores die durchschnittliche Satzlänge und nehmen unterschiedliche Worteingenschaften dazu. \n",
"Zuerst verschaffen wir uns einen Überblick über die Texteigenschaften, um die Ergebnisse der Metriken besser bewerten zu können. "
]
"source": "## Textkomplexität berechnen \nIm folgenden berechnen wir mittels vier unterschiedlicher Metriken die Textkomplexität. Alle Metriken verwenden für die Berechnung des Komplexitätsscores die durchschnittliche Satzlänge und nehmen unterschiedliche Worteigenschaften dazu. \nZuerst verschaffen wir uns einen Überblick über die Texteigenschaften, um die Ergebnisse der Metriken besser bewerten zu können. "
},
{
"cell_type": "code",
Expand Down Expand Up @@ -299,9 +285,7 @@
"cell_type": "markdown",
"id": "1650e5df-d9ba-4561-8e4e-fbb79727476e",
"metadata": {},
"source": [
"Ein Score zwischen 30 und 50 gibt eine hohe Schwierigkeit an, ungefährt äquivalent zum Niveau von Bachelorstudierenden."
]
"source": "Ein Score zwischen 30 und 50 gibt eine hohe Schwierigkeit an, ungefähr äquivalent zum Niveau von Bachelorstudierenden."
},
{
"cell_type": "markdown",
Expand Down
8 changes: 4 additions & 4 deletions corpus_analysis/corpus-analysis_assessment.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ question1 = [
"feedback": """✓ Korrekt! Wichtige Differenzierung: Es geht nicht nur um die absolute Wortlänge, der Text wird dabei in Abschnitte unterteilt, und es wird die Konsistenz der Schwierigkeit gemessen. Dies wird im Coleman-Liau-Index verwendet und unterscheidet sich von der einfachen durchschnittlichen Wortlänge."""
},
{
"answer": "Wörter mit mehr als drei Silben gelten in den meisten Indexe als schwer",
"answer": "Wörter mit mehr als drei Silben gelten in den meisten Indexen als schwer",
"correct": True,
"feedback": """✓ Korrekt! Standard-Schwellenwert: 1-2 Silben gelten als leicht, 3 und mehr Silben gelten als schwer. Dies wird in der Wiener Sachtextformel verwendet, ist sprachabhängig (Silbentrennung) und ein wichtiger Parameter für die Komplexität."""
},
Expand Down Expand Up @@ -93,7 +93,7 @@ question2 = [
"feedback": """✓ Korrekt! Standardberechnung: Die Summe aller Satzlängen wird durch die Anzahl der Sätze geteilt, dies glättet Extremwerte und liefert einen repräsentativen Wert für den gesamten Text. Es wird in Flesch, Wiener und ARI verwendet und bildet die Basis für die meisten Berechnungen."""
},
{
"answer": "Kürzere Sätze führen immer zu einem niedrigeren Textkomplexitätsscore in allen Indexe",
"answer": "Kürzere Sätze führen immer zu einem niedrigeren Textkomplexitätsscore in allen Indexen",
"correct": False,
"feedback": """× Nicht präzise genug. Wichtige Nuance: Die Richtung hängt vom Index ab, bei Flesch bedeutet ein höherer Score einen leichteren Text (kürzere Sätze), bei Wiener/ARI bedeutet ein niedrigerer Score einen leichteren Text (kürzere Sätze). Dies ist nicht einheitlich über alle Indexe, die Beziehung ist konsistent, aber die Skalen unterscheiden sich."""
},
Expand Down Expand Up @@ -364,7 +364,7 @@ Die Daten zeigen einen **klaren Abwärtstrend** der Flesch-Scores über 14 Jahre

---

**4. Überprüfung mit anderen Indexe:**
**4. Überprüfung mit anderen Indexen:**

**JA, definitiv!** Und zwar aus folgenden Gründen:

Expand Down Expand Up @@ -408,5 +408,5 @@ for measure in ['flesch', 'wiener', 'ari', 'coleman_liau']:

**Zusammenfassung:**

Die Analyse zeigt eine problematische Entwicklung hinsichtlich Barrierefreiheit. Eine umfassende Validierung mit multiplen Indexe und tiefergehende Analysen der Ursachen sind empfehlenswert, um fundierte Empfehlungen für barriereärmere Kommunikation zu geben.
Die Analyse zeigt eine problematische Entwicklung hinsichtlich Barrierefreiheit. Eine umfassende Validierung mit multiplen Indexen und tiefergehende Analysen der Ursachen sind empfehlenswert, um fundierte Empfehlungen für barriereärmere Kommunikation zu geben.
````
4 changes: 2 additions & 2 deletions corpus_analysis/corpus-analysis_intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,13 @@ Mit Ihren Rückmeldungen können wir unser interaktives Lehrbuch gezielt an Ihre
Sie können die auf einem Korpus ausgeführte Berechnung der Textkomplexität erklären und die Ergebnisse interpretieren.
```

Nachdem wir im vorherigem Kapitel ein Korpus gescraped und aus den HTML-Dokumenten den Text extrahiert haben, analysieren wir das Textkorpus in diesem Kapitel in Hinblick auf die Textkomplexität.
Nachdem wir im vorherigen Kapitel ein Korpus gescraped und aus den HTML-Dokumenten den Text extrahiert haben, analysieren wir das Textkorpus in diesem Kapitel in Hinblick auf die Textkomplexität.

```{figure} ../assets/images/flow-chart_corpus-analysis.png
---
name: Flussdiagramm der Fallstudie – Korpusanalyse
---
Flussdiagramm der Fallstudie, das aktuelle Arbeitspaket ist hevorgehoben.
Flussdiagramm der Fallstudie, das aktuelle Arbeitspaket ist hervorgehoben.
```

Dafür wird:
Expand Down
2 changes: 1 addition & 1 deletion corpus_analysis/corpus-analysis_resumee.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
Es gibt verschiedene Textkomplexitätsmaße, die unterschiedliche Parameter zur Berechnung der Textkomplexität oder Lesbarkeit eines Textes einsetzen. Die Parameter lassen sich aufteilen in die Wort- und die Satzebene. Die meisten Scores lassen sich in eine Klassenstufe übersetzen. Wichtig: Die Indizes unterscheiden sich in ihrer Richtung – beim Flesch-Index bedeutet ein höherer Score eine leichtere Lesbarkeit, bei den meisten anderen Indexen (ARI, Coleman-Liau, Wiener Sachtextformel) bedeutet ein höherer Score eine schwerere Lesbarkeit.

**Berechnung der Textkomplexität**
Wir haben vier Maße zur Berechnung der Textkomplexität angewendet: Flesch (am weitesten verbreitet, operiert auf Satzlänge und Silbenanzahl), Wiener Sachtextformel (auf Deutsch ausgelegt, operiert auf Satzlänge und Anteil von schwierigen Wörtern), Automated Readability Score (operiert rein auf Längenmaßen) und Coleman-Liau (operiert auf der Gleichverteilheit der Textschwierigkeit).
Wir haben vier Maße zur Berechnung der Textkomplexität angewendet: Flesch (am weitesten verbreitet, operiert auf Satzlänge und Silbenanzahl), Wiener Sachtextformel (auf Deutsch ausgelegt, operiert auf Satzlänge und Anteil von schwierigen Wörtern), Automated Readability Score (operiert rein auf Längenmaßen) und Coleman-Liau (operiert auf der Gleichmäßigkeit der Textschwierigkeit).
Die Maße haben wir mittels Python auf die Pressemitteilungen angewendet.

**Analyse und Visualisierung**
Expand Down
8 changes: 4 additions & 4 deletions corpus_analysis/corpus-analysis_text_complexity.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ Wie entwickelt sich die kommunikative Barrierearmut des Berliner Senats im Zeitr
`````
Um diese mit quantitativen Methoden zu bearbeiten, wurde die Forschungsfrage zunächst wie folgt **operationalisiert**:
1. die **Kommunikation des Berliner Senats** wird durch das Korpus, bestehend aus Pressemitteilungen, erfasst
2. die **Barrierearmut** wird über Lesarbeitsindizes errechnet
2. die **Barrierearmut** wird über Lesbarkeitsindizes errechnet

## Lesbarkeitsindizes
Wie im Kapitel ["Operationalisierung"](research-question_operationalization) beschrieben, kann Leichte Sprache in drei Dimension unterschieden werden. Im folgenden gehen wir genauer darauf ein, welche Indikatoren auf Wort- und Satzebene eine Rolle bei der Berechnung der Lesbarkeitsindizes spielen.
Wie im Kapitel ["Operationalisierung"](research-question_operationalization) beschrieben, kann Leichte Sprache in drei Dimensionen unterschieden werden. Im folgenden gehen wir genauer darauf ein, welche Indikatoren auf Wort- und Satzebene eine Rolle bei der Berechnung der Lesbarkeitsindizes spielen.

### Wortebene
* **Länge** der Wörter:
Expand Down Expand Up @@ -105,7 +105,7 @@ Wobei:
**Beispiel:**
* Prozentsatz von Wörtern mit drei oder mehr Silben: 2 von 13 = 0.1538 * 100 = 15.38
* Durchschnittliche Satzlänge (ASL) = 13 (da Kommata und Punkte nicht als Worte gezählt werden)
* Anzahl an langen Wörten: 6
* Anzahl an langen Wörtern: 6
* Wiener Sachtextformel = (0,2007 * 15,38) + (0.1682 * 13) + (0.1373 * 6) - 2,779 = 3.32

Der Satz wird als *sehr einfach* eingestuft.
Expand Down Expand Up @@ -158,7 +158,7 @@ Analog zum ARI, entspricht der Index dem US-amerikanischen Schuljahr, das zum Ve
Der Satz wird als *sehr schwierig* eingestuft.

<!-- ### Komplexere Methoden zur Berechnung der Textkomplexität -->
<!-- comment out for now since there's no content here -- >
<!-- comment out for now since there's no content here -->



Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ Für jede Zeiteinheit wird der Durchschnitt der Textkomplexitätsmaße errechnet

## Visualisierung
Eine visuelle Darstellung ermöglicht es, die Werte besser zu vergleichen. In einem Liniendiagramm, in dem die X-Achse in die Zeiteinheiten eingeteilt ist und die Y-Achse die Textkomplexität darstellt, werden zunächst alle Datenpunkte eingetragen und dann zu einer Linie verbunden. Da anhand der Linie lokale und globale Minima sowie Maxima gut erkennbar werden und sich leicht ein Trend ablesen lässt, eignet sich das Liniendiagramm gut zur Darstellung einer zeitlichen Entwicklung.
Die Häufigkeiten über Zeit ließen sich auch in einem Balkendiagramm darstellen. Diese sind nützlich, um Häufigkeiten in diskreten Zeitintervallen zu visualisieren, sie eignen sich aber weniger gut, um eine zeitliche Entwicklung zu zeigen.
Die Häufigkeiten über Zeit ließen sich auch in einem Balkendiagramm darstellen. Dieses ist nützlich, um Häufigkeiten in diskreten Zeitintervallen zu visualisieren, sie eignen sich aber weniger gut, um eine zeitliche Entwicklung zu zeigen.
Loading
Loading