RStudio Survival Guide

Überblick Lektion 1

Dies ist der Survival Guide, der dir das Überleben bei der Arbeit mit RStudio und Moodle leichter machen soll.

Hier findest du ein paar einfache Regeln und Tipps, die zunächst ein klein wenig Disziplin erfordern, sich im Laufe der Zeit aber zunehmend bezahlt machen werden.

ℹ️ Hinweis  ← (hier klicken)

Arbeitsverzeichnis

Lege ein dediziertes Arbeitsverzeichnis an, zum Beispiel:
C:\mein\RStudio\R_Tutorials

ℹ️ Hinweis

In dieses Verzeichnis kopierst du dann die Dateien, die du für deine Tutorials benötigst. Das könnte dann z.B. so ähnlich aussehen:

ℹ️ Hinweis: Je weniger Dateien, desto besser

ℹ️ Hinweis: Dateinamenerweiterungen

ℹ️ Hinweis: Datei-Ansicht in RStudio

Setze dann dein Arbeitsverzeichnis in RStudio:

Wenn du dein Arbeitsverzeichnis, wie oben dargestellt, über das Menü setzt, dann führt RStudio automatisch den entsprechenden Befehl in der Konsole aus:

Jetzt ist sichergestellt, dass RStudio problemlos mit den Dateien in deinem Arbeitsverzeichnis arbeiten kann.

Für jedes Tutorial ein Skript

Schau im Moodle unbedingt die Video-Tutorials an, nicht nur die verschriftlichen Versionen. Protokolliere alles in einem eigenen Skript! Beginne ℹ️ für jedes Tutorial ein neues Skript.

Die Liste deiner Skripte sieht dann zum Beispiel so aus:

Durch die Nummern am Anfang des Dateinamens werden die Dateien automatisch in der richtigen Reihenfolge angezeigt (bei alphabetischer Sortierung).

Zusammen mit den anderen Dateien aus dem Tutorial könnte dein Arbeitsverzeichnis jetzt etwa so aussehen:

Im RStudio hast du dann später für jedes Tutorial/Skript ein separates Fenster (wenn du z.B. aus mehreren Tutorials parallel etwas nachschauen möchtest):

ℹ️ Hinweis: Wie erstelle ich ein neues Skript?

In diesem Skript schreibst du alles auf, was dir im Tutorial wichtig erscheint. Das sind zunächst natürlich alle gezeigten Befehle, die du dann auch selbst ausprobieren kannst, aber auch deine eigenen Gedanken als Kommentare. Zum Beispiel:

# Mit diesem Befehl kann ich den Mittelwert
# der Variable "semester" berechnen
mean(datensatz$semester)
 
# und mit diesem Befehl kann ich den Median
# der Variable "semester" berechnen
median(datensatz$semester)
 
# Wie berechnet man nochmal den Modalwert?
# TODO:
# Da muss ich später nochmal nachschauen...

ℹ️ Hinweis: Ausführliche Kommentare

Dein Skript ist praktisch das Protokoll des Tutorials und deiner Gedanken dazu, das du im Laufe der Zeit auch nochmal überarbeiten kannst.

☝️ Am Ende des Semesters enthalten deine Skripte nicht nur die vollständige Liste aller relevanten Befehle, sondern auch deine persönliche Dokumentation dazu. Das ist viel besser als irgendwelche Übersichtslisten, die von anderen erstellt wurden.

Skript-Initialisierung

Beginne jedes Skript mit einem solchen Init-Bereich:

#### Init ####
rm(list=ls())
setwd("C:/mein/RStudio/R_Tutorials")
#install.packages("psych")
library(psych)
datensatz <- read.csv("datensatz.txt")

Du kannst dieses Beispiel als Template benutzen. Kopiere diese Zeilen einfach an den Anfang deines eigenen Skripts und passe sie dort entsprechend an.

Wann immer du mit dem Tutorial (bzw. mit dem Skript) arbeiten willst, führst du zunächst jeden der oben gezeigten vier ℹ️ oder noch mehr Befehle einzeln aus.

☝️ Durch das Ausführen dieser Befehle kannst du jederzeit den Ausgangszustand wiederherstellen.

Erklärung der Befehle im Einzelnen:

rm(list=ls())

Löscht das komplette Environment. Alle Objekte aus den vorangegangen Sitzungen werden entfernt, damit jedes Skript immer wieder mit einem sauberen Environment starten kann.

Alle notwendigen Vorbereitungen, um die Übungen im Tutorial durchzuführen, sind im Init-Bereich enthalten, können also jederzeit einfach wiederholt werden. So ist sichergestellt, dass du nichts weiter brauchst als das Skript und die Datendatei. Es gibt keine Abhängigkeit von einem vorangegangenem Tutorial.

setwd("C:/mein/RStudio/R_Tutorials")

Setzt das Arbeitsverzeichnis. Wenn du den genauen Pfad nicht weißt, kannst du das Arbeitsverzeichnis einfach über das Menü setzen (wie oben gezeigt) und den Befehl dann aus der Konsole in deinen Init-Bereich kopieren.

#install.packages("psych")

Hier musst du die Packages installieren, die für das jeweilige Tutorial erforderlich sind.

Ein Package muss immer nur ein einziges Mal installiert werden. Danach wird die entsprechende Zeile, wie hier dargestellt, mit einem #-Zeichen auskommentiert.

Beachte, dass die entsprechende Zeile nicht entfernt, sondern nur auskommentiert wird. So kannst du immer sehen, welche Packages du bei einer Neuinstallation von R und/oder RStudio ggf. nochmal installieren musst.

library(psych)

Hier musst du die Packages laden, die für das jeweilige Tutorial erforderlich sind. Das ist nach jedem Neustart von RStudio einmal erforderlich.

datensatz <- read.csv("datensatz.txt")

Hier musst du die für das Tutorial benötigte(n) Datei(en) einlesen.

ℹ️ Beachte das Dateiformat. Siehe dazu auch den nächsten Abschnitt "Dateiformate".

☝️ Hab keine Angst, dein RStudio zu schließen und wieder neu zu starten. Mit dem Init-Bereich kannst du jederzeit wieder den Ausgangszustand für das Tutorial herstellen.

Wenn du das oben gezeigte Template in dein Skript einfügst, sieht das ungefähr so aus:


Dateiformate

Kurzversion

.RData-Dateien kannst du so einlesen:

load("datensatz.RData")

.txt-Dateien kannst du (vermutlich) so einlesen:

datensatz <- read.delim("datensatz.txt")

ℹ️ Hinweis: Achte darauf, welche Datei du einlesen sollst

Lange Version

Die Daten liegen entweder im R-eigenen .RData-Format oder in einem einfachen Textformat (.txt) vor:

.RData-Dateien:

Dateien mit der Endung .RData sind recht einfach einzulesen. Du kannst die Datei einfach in der oben dargestellten "Files"-Ansicht anklicken. Dann öffnet sich ein Popupfenster, dass du bestätigen musst. Der entsprechende Befehl wird dann automatisch in der Konsole ausgeführt:

Da du dein Arbeitsverzeichnis gesetzt hast, kannst (und solltest) du die Pfadangabe entfernen, wenn du diesen Befehl in den Init-Bereich deines Skriptes kopierst.

Der richtige Befehl lautet also einfach nur:

load("datensatz.RData")

.txt-Dateien:

Dateien mit der Endung .txt sind einfache Textdateien (ℹ️ "R-fremde" Daten). Wenn du eine solche Datei in der "Files"-Ansicht mit der Maus anklickst, wird sie in einem Editor geöffnet, wo dir der Datei-Inhalt angezeigt wird:

ℹ️ Hinweis: Andere Dateiendungen.

Um eine Textdatei in einen Data Frame einzulesen, kannst du den "Import Dataset" Button benutzen:

Du musst die zu importierende Datei auswählen und dann kannst du in einem Vorschaufenster begutachten, ob die Daten richtig in den Data Frame geladen werden:

Normalerweise hat RStudio bereits die richtigen Optionen ausgewählt, die du nicht mehr verändern musst. Durch einen Klick auf "Import" wird automatisch der passende Befehl in der Konsole ausgeführt:

Auch hier solltest du die Pfadangabe entfernen, wenn du diesen Befehl in den Init-Bereich deines Skriptes kopierst. Also in diesem Fall einfach nur:

read.csv("datensatz.txt", sep=";")

ℹ️ Hinweis: Unterschiedliche Befehle bei Textdateien

ℹ️ Hinweis: Wenn es einen Fehler beim Einlesen gibt

ℹ️ Hinweis: Welches Dateiformat ist besser?

Keine Zwischenergebnisse

Speichere keine Zwischenergebnisse per save() oder per write.table(), etc.

Falls du im Rahmen eines Tutorials irgendwelche Objekte oder Daten speichern sollst, kannst du das zu Übungszwecken ruhig mal machen, aber die dabei entstandenen zusätzlichen Dateien solltest du am besten sofort wieder löschen! Sie sind überflüssig und du wirst sie nicht wieder brauchen.

☝️ Zur Erinnerung: Je weniger Dateien im Arbeitsverzeichnis, desto besser.

Solche gespeicherten Zwischenergebnisse haben keinen Nutzen. Sie sind bloß eine Quelle für Verwirrung und Fehler. Speichere keine Objekte oder Daten!

Alle Zwischenergebnisse kannst du jederzeit über dein Skript neu erzeugen, daher ergibt es überhaupt keinen Sinn, sie abzuspeichern.

☝️ Gespeicherte Zwischenergebnisse sind unnötige Fehlerquellen.

Die beiden Befehle zum Speichern von Daten solltest du am besten wieder aus deinem Gedächtnis streichen. Du brauchst sie bei der Arbeit mit R nicht.

☝️ Die einzigen Dateien bei deiner Arbeit mit R sind dein Skript und deine eine Datendatei.

Idealerweise hast du für jedes Tutorial immer nur zwei Dateien:

– die Skriptdatei (z.B. 01-Einführung.R)

– die Datendatei (z.B. datensatz.txt)

Das heißt, du hast zu jeder Zeit immer nur eine einzige Datendatei, die deinen vollständigen Datensatz enthält.

(natürlich nur sofern im zugehörigen Tutorial nicht gleichzeitig mehrere Datensätze geladen und verarbeitet werden sollen)

☝️ Zur Erinnerung: Am Anfang eines jeden Skriptes solltest du das Environment immer wieder komplett löschen und den Datensatz neu einlesen. Zum Beispiel so:

rm(list=ls())
datensatz <- read.csv("datensatz.txt")

Betrachte das Skript als den Spiegel deiner Gedanken. Je einfacher die Struktur deiner Daten und deines Skriptes, desto klarer deine Gedanken.

Bonustipp 🔒
Um diese Inhalte zu nutzen, musst du dich anmelden.

Schreibe einen Kommentar