Aan de troonrede zijn al 230.000 woorden besteed: ruim negentien uur aan leesvoer. Wij willen al deze teksten analyseren op leesbaarheid, maar handmatig kost dat simpelweg te veel tijd. Hoe hebben wij een machine geleerd om al deze teksten voor ons te lezen en beoordelen?

Via de website Troonredes.nl hebben we 195 teksten verzameld. Herko Coomans en Pieter C. Lagas hebben de Koninklijke teksten verzameld en online gezet. "Voor mijn dissertatie over de troonrede", zegt Lagas. "Het was ook een van de eerste proefschriften op CD-ROM. Een paar jaar daarna hebben we alles op een site gezet, en elk jaar vullen we hem aan met de laatste troonrede."

Met taalanalyse kun je zo veel teksten binnen korte tijd analyseren. Hieronder leggen we eenvoudig uit hoe taalanalyse werkt:

Je kunt het leesniveau van een tekst uitrekenen met de zogeheten Flesch-Kincaid Grade Level-score. Om die score te berekenen, tel je alle zinnen, woorden en lettergrepen in je tekst. Vervolgens gebruik je die drie elementen in de onderstaande formule:

fk_grade = 0.39*(words/sentences) + 11.8*(syllables/words) - 15.59

De uitkomst van die rekensom is het aantal jaren onderwijs dat je nodig hebt om die tekst te kunnen begrijpen. Dat is geen exacte wetenschap, maar het geeft wel een goede indruk van de leesbaarheid van je tekst. Of zoals taalexpert Jaap de Jong zegt: de Flesch-Kincaid-score is een ‘thermometer voor je toespraak’. Het geeft aan hoe goed je tekst is, maar niet direct wat je kunt doen om het beter te maken.

De analyse hebben we in R uitgevoerd. Hieronder vind je de beknopte code om je teksten te analyseren.

# Libraries inladen

library(readtext)
library(dplyr)
library(tidytext)
library(quanteda)

# Vul hier de directory in van de map waar jouw bestanden staan

dir = ""

# Elk bestand heeft dezelfde bestandsstructuur. Voorbeeld van de laatste Troonrede: Troonrede_Willem-Alexander_18_9_2018.txt

my_corpus = readtext(dir, dvsep='_', docvarsfrom="filenames", docvarnames = c('Category', 'Speaker', 'Day', 'Month', 'Year'))

# Alle teksten worden door de formule gehaald

leesbaarheid <- my_corpus %>%
mutate(syllables = nsyllable(text),
sentences = nsentence(text),
words = ntoken(text, remove_punct = TRUE),
fk_ease = 206.835 - 1.105*(words/sentences) - 84.6*(syllables/words),
fk_grade = 0.39*(words/sentences) + 11.8*(syllables/words) - 15.59) %>%
arrange(Year)

In de toegevoegde datasets vind je alle Troonredes in de periode 1814-2018. Mocht je iets met deze data doen, voeg dan sowieso een bronvermelding naar Troonredes.nl (data) en Pointer (code) toe. En tip ons als je iets interessants hebt ontdekt.

Makers

Samen komen we verder

Ons onderzoek begint bij jou. Heb jij een tip of ervaring die je met ons wil delen? Laat het ons weten!

Heb jij een tip of ervaring die je met ons wil delen? Laat het ons weten!

Documentatie uploaden
CAPTCHA
Deze vraag is om te controleren dat u een mens bent, om geautomatiseerde invoer (spam) te voorkomen.

Bedankt, je tip is verstuurd

Wat gebeurt er nu met mijn tip?

Bedankt dat je de tijd hebt genomen om het tipformulier in te vullen. Je tip is verstuurd naar de redacteur van het onderzoek. Wij publiceren niets met naam en toenaam zonder contact met je op te nemen. Soms krijgen we zoveel tips binnen dat het ons helaas niet lukt om iedereen een persoonlijke reactie te sturen. We vragen je begrip hiervoor. 

Benieuwd naar de impact van eerdere tips?

Van kamervragen tot petities en maatschappelijk debat: samen met jou pakken we systemisch falen en onrecht aan. Benieuwd naar de impact van eerdere onderzoeken en ingezonden tips? Bekijk dan nu ons track record.