Hausaufgabe 06 - Projektarbeit

Ziele

Diese Hausaufgabe hat die folgende Ziele:

Erste Schritte

Diese Hausaufgabe besteht aus zwei Teilen:

  1. Projektarbeit (Pflicht)
  2. Daten über Treibhausgase in der Stadt Zürich (Zum Teil Bonusmaterial)

Öffne deine Email Inbox und suche nach der Email mit dem Link für das GitHub Repo zu dieser Hausaufgabe (ha-06-projekarbeit).

Übungen - Teil 1 - Projektarbeit

Im Anschluss an die sieben Kurseinheiten bekommt ihr die Gelegenheit als Teil eines kleinen Abschlussprojektes Unterstützung zu erhalten.

Dafür braucht es ein paar Vorraussetzungen:

  1. R, RStudio und Git sind auf euren Arbeitsgeräten installiert
  2. Daten für die Projektarbeit sind ausgewählt
  3. Ein öffentliches (public) GitHub Repository wurde erstellt oder ein geschlossenes (private) GitHub Repository wurde erstellt zu welchem der GitHub Benutzer larnsce als Collaborator hinzugefügt wurde.

Beachte: Auch Projekte mit sensitiven und schützenswerten Daten können öffentlich publiziert werden. Dazu werden Ordner und/oder Dateien mit den zu schützenden Daten in der .gitignore Datei hinzugefügt. Somit wird erreicht, dass die Daten nicht zugänglich sind, jedoch der Code für die Arbeit mit den Daten, was deutlich zu einer transparenten Arbeitsweise beiträgt auch wenn die Ergebnisse nicht reproduzierbar sind. Dabei wird empfohlen sich innerhalb der Verwaltungseinheit mit den zuständigen Mitarbeiter_innen für Datenschutz in Verbindung zu setzen.

  1. Das GitHub Repository auf das eigene Arbeitsgerät klonen und daraus ein RStudio Project machen

Diese Übung soll sicherstellen, dass all diese Vorraussetzungen erfüllt sind.

Installation von R, RStudio und Git

  1. Falls die Software noch nicht vorhanden ist, wende dich an die IT Unterstützung um die nötige Software installiert zu bekommen. Du kannst in der Zwischenzeit bis zu dem Punkt fortfahren an dem ich dich bitte RStudio auf deinem Arbeitsgerät zu öffnen.

Liste mit Software für IT: https://github.com/rstatsZH/kochbuch/tree/main/01-Installation

Daten für das Projekt

Ideale Daten für das Projekt gibt es nicht, jedoch ist es sinnvoll nicht unbedingt Daten auszuwählen welche streng vertraulich sind, oder Daten welche Teil eines sehr grossen Projektes sind. Bereits öffentlich verfügbare Daten sind wertvoll wenn es euch wichtig ist das Projekt öffentlich und reproduzierbar zu publizieren. Das wichtigste Kritierium an die Daten ist jedoch, dass ihr Interesse daran habt den Datensatz zu erkunden und Fragen zu stellen und zu beantworten.

  1. Einen Datensatz, oder mehrere Datensätze, für das Projekt identifizieren.

GitHub Repository erstellen

Wie das geht hast du in Übung 1 der Hausaufgabe aus Woche 5 gelernt. Falls du Schwierigkeiten hast meiner Anleitung zu folgen, melde dich umgehend und ich kann dich unterstützen.

Abweichend von der Anleitung ist Folgendes:

Auch wird dieses Mal kein Project in der RStudio Cloud erstellt, sondern auf deinem eigenen Arbeitsgerät. Überspringe deshalb die Schritte 12 bis 17 und ersetze diese durch Folgendes:

Als nächstes könntest du mittels eines Dateimanagers (z.B. Windows File Explorer) deine Daten für das Projekt in dieses Repository kopieren. Es empfiehlt sich dazu innerhalb des Repositories einen Ordner namens “data” zu erstellen und die Daten dort abzulegen.

Wie du nun weiter machst ist dir überlassen. Möchtest du nicht, dass die Daten welche lokal gespeichert sind auf GitHub auftauchen? Dann füge den Pfad an dem diese liegen zu deiner .gitignore Datei hinzu (siehe Screenshot und ersetze den Namen data ggf. durch den Namen den du für diesen Ordner gewählt hast.

Auch ist es nützlich eine README.md Datei zu erstellen und diese im Stammpfad des Repositories zu speichern. In der README kannst du dein Projekt beschreiben oder wichtige Vorraussetzungen für die Nutzung und Wiederverwendbarkeit deklarieren (Lizenzen).

Sobald du zufrieden bist mit dem Aufbau deines Projektordners kannst du deine Veränderung mittels den dir bekannten Schritten und unter dem Git Reiter oben rechts in RStudio zurück auf GitHub pushen.

Übungen - Teil 2 - Treibhausgase

Übung 1 - Daten importieren

Die Aufgaben für diese Übung sind in der Vorlage hinterlegt.

Übung 2 - Daten transformieren und visualisieren

1. Pivoting

Die Daten sind derzeit in einem weiten Format. Das Ziel ist die Daten in ein langes Format zu bringen wobei nur die Spalte Jahr beibehalten wird und alle Spalten von Strom bis Heizoel_EL gedreht werden. Ich habe dir hier bereits etwas Code mit Lücken als Hilfestellung vorbereitet.

  1. Erstelle ein neues Objekt in deiner Arbeitsumgebung (Environment), welches im langen Format ist in dem du die Lücken ausfüllst. Den Namen für das Objekt kannst du selbst auswählen.
  2. Strick das Dokument und dann: git add, commit, push alle Veränderung zurück auf GitHub
___ <- ___ %>% 
  ____longer(
    
    # In diesem Argument werden die Spalten ausgewählt welche gedreht werden
    ___ = !Jahr,            
    
    # In diesem Argument wird der Name für die neue Spalte definiert, welche
    # die Namen aus den zuvor ausgewählten Spalten enthält
    ___ = "Energietraeger", 
    
    # In diesem Argument wird der Name für die neue Spalte definiert, welche
    # die Werte aus den zuvor ausgewählten Spalten enhält
    ___ = "Emissionen"
  )

2. Daten zusammenfassen und neue Variable erstellen

Die Aufgaben für diese Übung sind in der Vorlage für die Hausaufgabe hinterlegt.

3. Daten visualisieren 1

  1. Starte mit dem Objekt, welches du in Schritt 3 der vorheringen Übung erstellt hast
  2. Erstelle ein Säulendiagram und lege das Jahr auf die x-Achse und die Differenz der Emissionen zwischen den Jahren auf die y-Achse
  3. Bonus: Warum ist auf der x-Achse immer nur für alle zehn Jahre ein Tick mit Beschriftung?
  4. Bonus: Wandle den Typen der Variable “Jahr” in eine Variable mit dem Typ Faktor um bevor du den Plot erstellst
  5. Bonus: Passe das Layout des Plots beliebig an

4. Daten visualisieren 2 (Bonus)

  1. Nutze das Objekt welches du in “2.1 Pivoting” erstellt hast, und:
    • Nutze die Funktion group_by() um die Daten nach dem Jahr zu gruppieren
    • Nutze die Funktion filter() um in der Spalte Jahr nur das Jahr 1990 und das Jahr 2016 anzuzeigen
    • Wieviele Wege fallen dir ein um auf das Ergebnis zu kommen?
  2. Speicher das Ergebnis als ein neues Objekt in deiner Arbeitsumgebung (Environment) mit einem Namen deiner Wahl
  3. Reproduziere folgendes verbundenes Säulendiagramm

Corrections

If you see mistakes or want to suggest changes, please create an issue on the source repository.

Reuse

Text and figures are licensed under Creative Commons Attribution CC BY-SA 4.0. Source code is available at https://github.com/rstatsZH/website, unless otherwise noted. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".