add implementation beamer slides
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,171 @@
|
||||
\documentclass{beamer}
|
||||
|
||||
\usepackage[utf8]{inputenc}
|
||||
|
||||
\usepackage{listings}
|
||||
\lstdefinestyle{mystyle}{
|
||||
commentstyle=\color{gray},
|
||||
keywordstyle=\color{black},
|
||||
numberstyle=\tiny\color{gray},
|
||||
stringstyle=\color{black},
|
||||
basicstyle=\ttfamily\footnotesize,
|
||||
breakatwhitespace=false,
|
||||
breaklines=true,
|
||||
captionpos=b,
|
||||
keepspaces=true,
|
||||
numbers=left,
|
||||
numbersep=5pt,
|
||||
showspaces=false,
|
||||
showstringspaces=false,
|
||||
showtabs=false,
|
||||
tabsize=2
|
||||
}
|
||||
|
||||
\lstset{style=mystyle}
|
||||
\begin{document}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Implementierung}
|
||||
\tableofcontents
|
||||
\end{frame}
|
||||
|
||||
\section{Herunterladen der Protokolle}
|
||||
\begin{frame}
|
||||
\frametitle{Herunterladen der Protokolle}
|
||||
|
||||
Funktion: \lstinline{fetch_all(download_dir)}
|
||||
|
||||
\begin{itemize}[<+->]
|
||||
\item Protokolle als XML-Dateien von \url{bundestag.de} herunterladen und
|
||||
in \lstinline{download_dir} speichern.
|
||||
\item Problem: Maschinenunfreundliche Webseite
|
||||
\item Lösung: Source Code von \url{bundestag.de} nach Schnittstelle durchsuchen
|
||||
\end{itemize}
|
||||
|
||||
\end{frame}
|
||||
\section{Konvertierung der XML-Dateien in tibbles}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Konvertierung der XML-Dateien in tibbles}
|
||||
Funktion: \lstinline{read_all(filepath)}
|
||||
\begin{itemize}[<+->]
|
||||
\item Liest jede XML-Datei in angegebenem Dateipfad einzeln
|
||||
\item Extrahiert Sitzungsdatum, Rednerliste und Sitzungsverlauf
|
||||
\item Konvertiert Rednerliste in eine R Liste.
|
||||
\item Iteriert durch den Sitzungsverlauf, extrahiert Reden,
|
||||
Redebeiträge, Kommentare und Beifall
|
||||
\item Kombiniert alle Redner, Reden, Redebeiträge, Kommentare und Beifall
|
||||
zu 5 tibbles und gibt benannte Liste zurück.
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Tabellen}
|
||||
Ergebnis der Konvertierung ist eine benannte Liste \lstinline{res} mit tibbles:
|
||||
\pause
|
||||
\begin{lstlisting}[language=R,basicstyle=\tiny\ttfamily]
|
||||
> res$speaker
|
||||
# A tibble: 1,025 x 7
|
||||
id prename lastname fraction title role_short role_long
|
||||
<chr> <chr> <chr> <chr> <chr> <chr> <chr>
|
||||
1 110021 Alterspraesident D Otto Solms NA NA Alterspraesi Alterspraesi
|
||||
2 110032 Carsten Schneider SPD NA NA NA
|
||||
# with 1,023 more rows
|
||||
\end{lstlisting}
|
||||
\pause
|
||||
\begin{lstlisting}[language=R,basicstyle=\tiny\ttfamily]
|
||||
> res$speeches
|
||||
# A tibble: 25,068 x 3
|
||||
id speaker date
|
||||
<chr> <chr> <date>
|
||||
1 ID19100100 11002190 2017-10-24
|
||||
2 ID19100200 11002190 2017-10-24
|
||||
# with 25,066 more rows
|
||||
\end{lstlisting}
|
||||
\pause
|
||||
\begin{lstlisting}[language=R,basicstyle=\tiny\ttfamily]
|
||||
> res$talks
|
||||
# A tibble: 63,663 x 3
|
||||
speech_id speaker content
|
||||
<chr> <chr> <chr>
|
||||
1 ID19100100 11002190 "Guten Morgen, liebe Kolleginnen und Kollegen! Nehmen Sie
|
||||
2 ID19100300 11003218 "Sehr geehrter Herr Praesident! Sehr geehrte Kolleginnen u
|
||||
# with 63,661 more rows
|
||||
\end{lstlisting}
|
||||
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\begin{lstlisting}[language=R,basicstyle=\tiny\ttfamily]
|
||||
> res$comments
|
||||
# A tibble: 83,649 x 5
|
||||
speech_id on_speaker fraction commentator content
|
||||
<chr> <chr> <chr> <chr> <chr>
|
||||
1 ID19100300 11003218 BUENDNIS 90/D Katrin Goering Was?
|
||||
2 ID19100300 11003218 CDU/CSU Volker Kauder Warum habt ihr das bei Ge
|
||||
# with 83,647 more rows
|
||||
\end{lstlisting}
|
||||
\pause
|
||||
\begin{lstlisting}[language=R,basicstyle=\tiny\ttfamily]
|
||||
> res$applause
|
||||
# A tibble: 89,586 x 8
|
||||
speech_id on_speaker CDU_CSU SPD FDP DIE_LINKE BUENDNIS_90_DIE_GRU AfD
|
||||
<chr> <chr> <lgl> <lgl> <lgl> <lgl> <lgl> <lgl>
|
||||
1 ID19100300 11003218 FALSE TRUE FALSE TRUE TRUE FALSE
|
||||
2 ID19100300 11003218 FALSE TRUE TRUE TRUE FALSE FALSE
|
||||
# with 89,584 more rows\end{lstlisting}
|
||||
\end{frame}
|
||||
|
||||
\section{Reparieren von Fehlern}
|
||||
\begin{frame}
|
||||
\frametitle{Reparieren von Fehlern}
|
||||
|
||||
Problem: Uneinheitliche Schreibweisen / Fehler in den Rednerlisten.
|
||||
|
||||
\pause
|
||||
Lösung: Funktion: \lstinline{repair_speaker(speakers)}
|
||||
\pause
|
||||
\begin{itemize}[<+->]
|
||||
\item Erhält \lstinline{tibble} von Rednern
|
||||
\item Entfernt Redner mit ungültigen, doppelt vergebenen IDs
|
||||
\item Vereinheitlicht Schreibweisen der Fraktionen, Namen und Titel der Redner
|
||||
\end{itemize}
|
||||
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Reparieren von Fehlern}
|
||||
Problem: Namen in Kommentaren Rednern aus Rednertabelle zuordnen
|
||||
|
||||
\pause
|
||||
Lösung: Funktion \lstinline{repair_comments(comments, speakers)}
|
||||
\begin{itemize}
|
||||
\item Erstellt für jeden Redner einen Regulären Ausdruck aus dem Namen
|
||||
\item Sucht für jeden Kommentar nach dem entsprechenden Eintrag in der
|
||||
Rednertabelle
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Reparieren von Fehlern}
|
||||
Beide Reparaturschritte werden in der Funktion \lstinline{repair} zusammengefasst.
|
||||
\end{frame}
|
||||
|
||||
\section{Analyse}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Analyse}
|
||||
Stelle Hilfsfunktionen zur Analyse der Daten zur Verfügung:
|
||||
\begin{itemize}[<+->]
|
||||
\item \lstinline{bar_plot_fractions}: Erstellt ein Balkendiagramm aus einer Tabelle
|
||||
mit Fraktionsdaten
|
||||
\item \lstinline{find_word}: Fügt in der Redebeiträgetabelle zu jedem Redebeitrag
|
||||
die Häufigkeit eines Regulären Ausdrucks hinzu.
|
||||
\item \lstinline{word_usage_by_date}: Zählt an welchen Daten (Tagen) ein regulärer Ausdruck
|
||||
wie oft verwendet wird.
|
||||
\item \lstinline{join_speaker}: Fügt einer Tabelle mit Spalte \lstinline{speaker} die
|
||||
enstprechenden Informationen aus der Rednertabelle hinzu.
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\end{document}
|
||||
Reference in New Issue
Block a user