| @@ -102,103 +102,12 @@ structure: `speech_id`, `on_speaker`, `CDU_CSU`, `SPD`, `FDP`, `DIE_LINKE`, `BUE | |||
| analysis.R provides some functions to analyze the "Plenarprotokolle" and to create plots. | |||
| In the vignettes you can find different analyses of the protocols. | |||
| In the vignettes you can find different analyses of the protocols, for example: | |||
| - "Who talks the most?" | |||
| - "Which party gives the most speeches?" | |||
| - "Which party comments the most on which parties?" | |||
| - "When are which topics discussed the most?" | |||
| - ... | |||
| ____________________________________________________________________________ | |||
| # How to develop | |||
| ```r | |||
| # alles geht mit devtools (laedt auch noch ein paar andere pakete) | |||
| library(devtools) | |||
| # neu laden aller paket funktionen | |||
| load_all() | |||
| #In CSV-files schreiben, um das laden zu beschleunigen | |||
| tables <- read_all() | |||
| tables <- repair(tables) | |||
| write_to_csv(tables) | |||
| ``` | |||
| Wir verwenden NIEMALS source, etc.! Außerdem NIEMALS library(...) verwenden, sondern | |||
| um neue pakete hinzuzufuegen (als dependency), verwende: | |||
| ```r | |||
| use_package("my-good-old-package") | |||
| ``` | |||
| Um paket imports verfuegbar zu machen, muss man diese in `R/hateimparlament-package.R` | |||
| als `@import <package>` hinzufuegen. | |||
| Um dokumentationen neu zu laden / zu erstellen (ruft roxgen auf) | |||
| ```r | |||
| document() | |||
| ``` | |||
| Baue vignetten | |||
| ```r | |||
| rmarkdown::render("vignettes/bla.Rmd") | |||
| ``` | |||
| # Herunterladen | |||
| Bevor analysiert werden kann, muss fetch.R ausgeführt werden, um alle Protokolle herunterzuladen. | |||
| # Parsing | |||
| ## Tabellen | |||
| parse.R parsed einzelne Protokolle und erstellt 5 Tibbles | |||
| ### Redner | |||
| Struktur: `id` , `vorname` , `nachname` , `fraction` , `titel` , `rolle_kurz`, `rolle_lang` | |||
| Die Rollen sind beispielsweise "Bundeskanzlerin". Leider gegendert und deshalb wahrscheinlich | |||
| nervig zu analysieren. | |||
| Wird gewonnnen aus dem `<rednerliste>` Eintrag am Ende der Protokolle. | |||
| ### Reden | |||
| Struktur: `id` , `redner` | |||
| Die Reden `id` wird im Protokoll festgelegt und ist eindeutig. Eine Rede ist ein | |||
| `<rede>` Eintrag im Sitzungsverlauf. Eine Rede hat immer einen Hauptredner | |||
| (der der vorne am Pult steht). | |||
| Innerhalb einer Rede kann es verschieden Redebeiträge geben: | |||
| - Kommentare: Beifall, Zwischenrufe, etc. | |||
| - Redebeiträge: Typischerweise hauptsächlich der Hauptredner, aber auch Zwischenfragen. Diese werden | |||
| beim parsen in der Tabelle Talks gespeichert. | |||
| ### Talks | |||
| Struktur: `rede_id` , `redner` , `content` | |||
| Das sind die eigentlichen Redebeiträge, die innerhalb von _rede_ Einträgen auftauchen. Dabei gilt: | |||
| - `rede_id`: Die Rede in dem der Beitrag auftaucht | |||
| - `redner`: Der Sprecher des Redebeitrags | |||
| - `content`: Der Inhalt der Rede (__wichtig__: Aktuell werden die Ordnungskommentare des | |||
| Bundestagspräsidenten nicht herausgefiltert, tauchen also im Inhalt auf, obwohl sie nicht vom | |||
| `redner` gesprochen werden. To be fixed -> Issues!) | |||
| ## Noch zu parsen: Alles kann, nichts muss. | |||
| - Kommentare (aktuell werden nur `<p>`'s in Reden gesammelt). Hier ist zu überlegen, wie diese | |||
| gesammelt werden sollten. | |||
| - Meta Daten? Diese sind teilweise in den `rede_id`'s encoded. | |||
| ## Kombinieren der Tabellen der Protokolle | |||
| - Alle Tabellen sollten schlussendlich kombiniert werden zu großen Tabellen über | |||
| alle Protokolle. | |||
| # Analyse | |||
| - Schnittmenge AfD Vokabular und Hitler's Reden? | |||
| - Redeanteile nach Geschlecht (dazu gibt es leider keine Daten in der Rednerliste), Fraktion, etc. | |||
| - Ideen, Ideen, Ideen ... | |||