Daten einlesen

Für Windows-NutzerInnen
Letzte Änderung am 02. April 2020

Table of Contents


Einleitung

Im Psychologiestudium kommt man um R nicht herum, und das aus gutem Grund, denn es ist kostenlos und bietet viele Möglichkeiten der Datenanalyse. Den meisten Studierenden fällt die Anwendung von R aber nicht leicht. Im Folgenden werden wir eine detaillierte Anleitung zum Einlesen von Daten in RStudio geben.

Beim Einlesen von Daten in R geschehen in der Regel zwei Dinge. Zum einen werden die Informationen, die oftmals in einem Datenfile (Textdatei, Excel-Sheet, SPSS Datenformat, etc.) gespeichert sind, ausgelesen. Zum anderen wird auf Basis dieser Daten innerhalb der R-Umgebung ein sogenanntes Datenobjekt erzeugt, oftmals in Form eines Dataframes.

Im Folgenden gehen wir die einzelnen Schritte bzw. die verschiedenen Wege zum Einlesen von Dateien durch. Grundsätzlich kann man die grafische Benutzeroberfläche von RStudio oder Funktionen nutzen. Von den drei hier vorgestellten Wegen, Daten in RStudio einzulesen, sollten wir uns den auswählen, der uns am intuitivsten erscheint.

Exemplarisch schauen wir uns das Einlesen von Dateien für zwei weit verbreitete Arten von tabellarischen Daten an: .csv- und .txt-Dateien. Die Endung .csv steht für comma separated values; .txt steht für Textdatei.

Was ist eine grafische Benutzeroberfläche?

Die Grafische Benutzeroberfläche, oder auch Benutzungsschnittstelle, wird häufig auch mit GUI (Graphical User Interface) abgekürzt. Durch diese kann man mit der Maus auf Symbole und andere Steuerelemente klicken anstatt Funktionen in der Konsole auszuführen. Die grafische Benutzeroberfläche in RStudio ist viel besser ausgebaut, weswegen wir diese auch nutzen wollen.


1. Datei herunterladen

Die erste Frage, die sich stellt, ist, wie man an die Datenfiles kommt, die man einlesen möchte. Tatsächlich existieren hier unterschiedliche Wege. Im Rahmen eines Experimentes können Datenfiles selbst erstellt werden, z.B. in Excel (.xlsx). In Seminaren oder Übungen werden dagegen meist fertige Datenfiles über Moodle bereitgestellt, oftmals im .txt- oder .csv-Format.

Im nachfolgenden Beispiel wird gezeigt, wie man unter Benutzung des Browsers Google Chrome ein Datenfile aus einem Moodle-Kurs herunterladen, auf der Festplatte des Computers speichern und in RStudio einlesen kann.

Dazu begibt man sich in den entsprechenden Moodle-Kurs und wählt dann das Datenfile mit der rechten Maustaste an, wählt die Option Link speichern unter… sowie den gewünschten Zielordner zur Ablage aus (siehe Abb. 1).

Abb. 1: Herunterladen des Datenfiles neuro.csv aus Moodle


Sehr wichtig ist es, sich immer zu merken, in welchem Ordner der heruntergeladene Datensatz gespeichert wird. Es ist sinnvoll, ihn bereits jetzt in dem Ordner zu speichern, in welchem man auch sein R-Skript später speichern möchte. Unter Windows und im Browser Chrome kann man den Zielordner sehr leicht herausfinden, indem man im Browser rechts oben auf die drei Punkte klickt und den Menüpunkt Downloads anwählt (siehe Abb. 2). Es öffnet sich ein neuer Tab im Browser, in dem man dann die Option In Ordner anzeigen auswählen kann.

Abb. 2: Finden des Downloadordners


2. Verschieben der Datei in den Arbeitsordner

Häufig werden heruntergeladene Datenfiles unter Windows standardmäßig im Ordner Downloads gespeichert. Möchte man eine Datenanalyse durchführen, ist es aber von Bedeutung, dass sich alle Files, auf die man zurückgreifen möchte, sowie das Skript selbst, in demselben Ordner befinden. Daher sollte man für jedes neue Projekt einen neuen Ordner anlegen und die heruntergeladenen Datenfiles dorthin verschieben.

Dazu wählt dann mit Rechtsklick die Datei im Ordner aus, die verschoben werden soll, und klickt dann auf die Option Ausschneiden (siehe Abb. 3). Im Gegensatz zu Kopieren entfernt dabei Ausschneiden das File bereits aus dem ursprünglichen Ordner.

Abb. 3: Ausschneiden des Datenfiles


Als nächstes begibt man sich in den Zielordner, den man zuvor ggfs. neu erstellt hat, und wählt nach einem Rechtsklick die Option Einfügen aus (siehe Abb. 4).

Abb. 4: Einfügen des Datenfiles


Jetzt befindet sich das Datenfile im Zielordner, in welchem gearbeitet werden soll.

3. Datei in RStudio einlesen

Nachdem das Datenfile heruntergeladen und am gewünschten Zielort gespeichert ist, kann RStudio gestartet werden. Nun schauen wir uns an, wie man das Datenfile neuro.csv (bzw. neuro.txt) in R importieren kann.  

Weg 1: Importieren mithilfe des Icons Import Dataset

Eine Variante, Daten in R zu importieren, die ganz ohne Code auskommt, ist es, direkt im Workspace auf das Icon Import Dataset zu klicken (siehe Abb. 5). Dazu wählt man im rechten oberen Panel den Reiter Environment aus und klickt dort auf das Icon Import Dataset. Achtung: das gilt nur für RStudio. In R gibt es diese Möglichkeit nicht!

Abb. 5: Importieren mithilfe des Icons


Klickt man auf From CSV, öffnet sich ein Fenster, in dem man das Datenfile einlesen kann. Praktisch ist dabei, dass man eine Vorschau des Datenobjektes in R erhält und sofort sieht, wenn es Probleme mit der Interpretation der Trennungszeichen o.ä. gibt (siehe Abb. 6).

Dazu sind nachfolgende Schritte nötig:

Abb. 6: Das Fenster zum Importieren


Falls der Datensatz erfolgreich eingelesen wurde, erscheint nun im rechten oberen Panel (Reiter Environment im rechten oberen Panel von RStudio) ein Datenobjekt (vom Typ data.frame) mit der Bezeichnung neuro. Der inhaltlichen Analyse der Daten steht nun nichts mehr im Wege (siehe Abb. 7).

Abb. 7: Das Panel ‘Environment’ prüfen


Weg 2: Manuell Importieren mit Funktionen

Dieser Weg mag auf den ersten Blick weniger intuitiv erscheinen, da er über Quelltext funktioniert (und nicht über das Klicken auf ein Icon), aber er ist auch weniger fehleranfällig. Zuerst muss ein sogenanntes Working Directory gesetzt werden. Dieses bezeichnet den Ordner, in dem gearbeitet werden soll, das Skript gespeichert wird und in dem sich auch das Datenfile befinden sollte. Im zweiten Schritt können die Daten/Informationen aus dem Datenfile in R eingelesen werden.

Schritt 1: Neues R-Skript öffnen

Zunächst sollte ein neues R-Skript geöffnet werden. Hierzu gehen wir auf File > New File > R-Script (siehe Abb. 8). In diesem Skript geben wir auch euren Quellcode ein.

Abb. 8: Öffnen eines neuen Skriptes


Das neue R-Skript erscheint im linken oberen Panel in RStudio als Reiter mit dem Titel Untitled1.

Schritt 2: Das Working Directory setzen

Egal, von welchem Typ unser Datenfile ist, müssen zunächst mit dem Befehl setwd() das Working Directory festlegen. In die Klammern muss dabei der Pfad des Ordners, in dem iwir arbeiten wollen, eingetragen werden. Unter Windows kann man den Pfad eines Ordners leicht finden und direkt kopieren (siehe Abb. 9). Dazu begibt man sich auf dem Computer in den Ordner, in welchem das Datenfile abgelegt ist. Man klickt nun einmal mit einen Rechtsklick in die Adresszeile im oberen Bereich der Ordneransicht.

Abb. 9: Herauskopieren des Pfades aus der Adresszeile des Windows File Explorers


Nun begibt man sich zurück zur Benutzeroberfläche von RStudio und fügt den kopierten Pfad als Argument der Funktion setwd() in die Klammern des Befehls ein. Wichtig ist dabei, dass alle \ (backslash) aus dem kopierten Pfad dabei in / (slash) umgekehrt werden müssen. Zudem ist zu beachten, dass der Pfad als Argument der setwd()-Funktion in " " oder ' ' gesetzt wird (siehe Abb. 10).

Abb. 10: Festlegen des Working Directorys


Wenn dieser Befehl mit Run ausgeführt wurde, ist das Working Directory gesetzt. Wollten wir überprüfen, ob das Setzen des Working Directory funktioniert hat, können wir den Befehl getwd() eingeben (siehe Abb. 11). Die Klammern des Befehls bleiben leer. Uns wird nun in der Konsole bzw. dem linken unteren Panel das aktuell gesetzte Working Directory ausgegeben.

Abb. 11: Anzeige des aktuell gesetzten Working Directorys


Befindet sich das Datenfile in diesem Verzeichnis, kann jetzt das Einlesen folgen.

Schritt 3: Die Datei einlesen

Welche Funktion hierfür angebracht ist, hängt von der Struktur des Datenfiles ab.

.csv

Handelt es sich um ein File vom Typ .csv, benötigt man den Befehl read.csv(). Dazu gibt man die Funktion read.csv() in das Skript ein. Das Argument dieser Funktion ist der Name des Datenfiles aus dem Working Directory, hier also neuro.csv. Wichtig ist auch hier wieder zu beachten, dass das dieser in Anführungszeichen gesetzt wird. Über das Drücken des Run Buttons wird der Befehl ausgeführt. Das Datenobjekt sollte außerdem gleich unter einem sinnvollen Namen in R abgespeichert werden. In diesem Beispiel (siehe Abb. 12) wurde der Name daten gewählt.

Abb. 12: Einlesen der Daten eines Datenfiles vom Typ .csv


In der Ansicht des Workspace (Reiter Environment im rechten oberen Panel von RStudio) sollte nun ein Objekt mit dem Namen daten erscheinen (siehe Abb. 13).

Abb. 13: Darstellung des neuen R-Objektes im Workspace


.txt

Handelt es sich dagegen um ein Datenfile vom Typ .txt oder .dat, so benötigt man den Befehl read.table() (siehe Abb. 14). Der restliche Vorgang bleibt unverändert. Auch hier sollte in der Ansicht des Workspace (Reiter Enviroment im rechten oberen Panel von RStudio) ein neues Datenobjekt erscheinen.

Abb. 14: Einlesen der Daten eines Datenfiles vom Typ .txt oder .dat


Will man den Inhalt des neuen eingelesenen Datenobjektes anschauen möchtet, kann man im rechten oberen Panel der Benutzeroberfläche von RStudio auf das Datenobjekt klicken. In diesem Beispiel würde man einmal auf daten klicken. Nun sollte sich im linken oberen Panel ein neues Fenster öffnen, in welchem das Datenobjekt angezeigt wird (siehe Abb. 15).

Abb. 15: R-Objekt anklicken, um Inhalt anschauen zu können


Weg 3: Working Directory direkt in RStudio setzen

Statt über den Befehl setwd() kann man innerhalb von RStudio auch direkt den Ordner, in dem man arbeiten möchte auswählen und ihn dann als Working Directory festlegen.

Schritt 1: Das Working-Directory setzen

Um einen Ordner auszuwählen, der dann als Working Directory festgelegt werden soll, muss man im rechten unteren Fenster von RStudio zunächst den Reiter Files anklicken (siehe Abb. 16).

Abb. 16: Auswählen des richtigen Reiters im rechten unteren Panel


Als nächstes wählt man rechts das Icon aus (siehe Abb. 17).

Abb. 17: Auswählen des richtigen Icons


Es öffnet sich nun ein kleines Fenster, in dem man den Ordner, in dem gearbeitet werden soll, per Mausklick auswählen kann (siehe Abb. 18).

Abb. 18: Auswählen des Ordners, in dem gearbeitet werden soll


Bestätigt man die Auswahl mit OK, ist im Panel Files neben dem Häuschen-Icon nun der Pfad des ausgewählten Ordners zu sehen. Darunter findet man alle Dateien, die sich in diesem Ordner befinden (siehe Abb. 19).

Abb. 19: Anwählen des Ordners, der als Working Directory festgelegt werden soll


Achtung: Bisher ist dieser Ordner allerdings noch nicht als Working Directory festgelegt. Dazu muss man in der Leiste unterhalb der Reiter Buttons noch den mit dem Zahnrad-Icon versehenen Menüpunkt More und dann Set as Working Directory anwählen (siehe Abb. 20).

Abb. 20: Festlegen des angewählten Ordners als Working Directory


Hat man diesen Schritt erfolgreich ausgeführt, sollte jetzt in der Konsole bzw. dem linken unteren Panel der Befehl setwd() mit dem gewünschten Verzeichnis innerhalb der Klammern zu sehen sein (siehe Abb. 21).

Abb. 21: Festlegen des Working Directory


Schritt 2: Datei importieren

Von nun an ergeben sich einige Parallelen zu Weg 1. Möchte man nun z.B. die Daten aus dem Datenfile neuro.csv aus dem hier ausgewählten Beispielordner neue R-Aufgabe importieren, muss man neuro.csv und dann die Option Import Dataset anklicken (siehe Abb. 22).

Abb. 22: Importieren eines Datenfiles


Ähnlich wie im Weg 2 öffnet sich nun ein Fenster, in dem man kontrollieren kann, ob die Daten von R richtig aus dem Datenfile ausgelesen werden, d.h. ob z.B. die Trennungszeichen und die Kopfzeile auch als solche erkannt werden. Stimmt die Vorschau mit den Erwartungen überein, sollte man rechts unten auf Importieren klicken (siehe Abb. 23).

Abb. 23: Das Fenster zum Importieren


Im Workspace sollte nun der neue Dataframe zu finden sein (siehe Abb. 24).

Abb. 24: Erscheinen des Dataframes im Workspace



Um eine möglichst exakte Replikation der Funktionen zu gewährleisten gibt es im folgenden relevante Angaben zum System (R-Version, Betriebssystem, geladene Pakete mit Angaben zur Version), mit welchem diese Seite erstellt wurde.


sessionInfo()

R version 3.6.3 (2020-02-29)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS High Sierra 10.13.6

Matrix products: default
BLAS:   /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRlapack.dylib

locale:
[1] de_DE.UTF-8/de_DE.UTF-8/de_DE.UTF-8/C/de_DE.UTF-8/de_DE.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods  
[7] base     

other attached packages:
[1] captioner_2.2.3

loaded via a namespace (and not attached):
 [1] compiler_3.6.3  magrittr_1.5    tools_3.6.3     htmltools_0.4.0
 [5] yaml_2.2.1      Rcpp_1.0.4      distill_0.7     stringi_1.4.6  
 [9] rmarkdown_2.1   knitr_1.28      stringr_1.4.0   xfun_0.12      
[13] digest_0.6.25   rlang_0.4.5     evaluate_0.14  

Für Informationen zur Interpretation dieses Outputs schaut auch den Abschnitt Replizierbarkeit von Analysen des Kapitels zu Paketen an.