Daten einlesen

Für Mac-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 R Studio 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 R Studio 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 eine csv-Datei aus einem Moodle-Kurs herunterladen, auf der Festplatte des Computers speichern und in RStudio einlesen kann.

Google Chrome

Man wählt das Datenfile an, indem man gleichzeitig die Maustaste und die ctrl-Taste drückt (alternativ kann man einen Rechtsklick ausführen). Nun öffnet sich ein Menü, indem man die Option Link speichern unter… sowie anschließend den gewünschten Zielordner zur Ablage auswählt (siehe Abb. 1). Wenn man dies macht, befindet sich das Datenfile von Anfang an im richtigen Arbeits- bzw. Zielordner. Es sollte für jedes Projekt ein spezifischer Ordner angelegt werden.

Abb. 1: Herunterladen eines Datenfiles (Chrome)


Sehr wichtig ist es, sich immer zu merken, in welchem Ordner der heruntergeladene Datensatz gespeichert wird. Den Zielordner kann man finden, 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 Finder anzeigen auswählen kann. Anschließend öffnet sich der Finder und zeigt die betreffende Datei an.

Abb. 2: Finden des Downloadordners (Chrome)


Safari

Man öffnet die Datei im Browser (z.B. in einem neuen Tab), macht einen Rechtsklick (dabei darf nichts markiert sein) und klickt auf Seite sichern unter…. In dem Fenster, welches sich dann öffnet, muss man bei Format noch festlegen, dass man den Quelltext der Seite (und nicht das Webarchiv) herunterladen möchte (siehe Abb. 3). Auch hier kann man festlegen, wo die Datei gespeichert werden soll.

Abb. 3: Herunterladen eines Datenfiles (Safari)


Manchmal wird man beim Speichern gefragt, ob die Endung .txt angehängt werden soll. Das sollte man verneinen, da ansonsten das Dateiformat geändert wird bzw. die Endung sich doppelt.

Oben rechts im Browser sieht man einen nach unten zeigenden Pfeil. Wenn wir auf diesen klicken, können wir uns die heruntergeladene Datei im Finder anzeigen lassen.

2. Verschieben der Datei in den Arbeitsordner

Häufig werden heruntergeladene Datenfiles unter Mac OS X standardmäßig im Ordner Downloads gespeichert. Möchte man eine Datenanalyse durchführen, ist es aber wichtig, dass alle Files, auf die man zurückgreifen möchte, sowie das Skript selbst, sich 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 man im Finder den Download Ordner aus und sucht die Datei, die verschoben werden soll. Man wählt diese dann aus, indem man in die Zeile klickt, in welcher der Dateiname steht, und gleichzeitig die ctrl-Taste drückt (oder einen Rechtsklick ausführt). Nun öffnet sich ein Menü, in welchem man Kopieren auswählt (siehe Abb. 4).

Abb. 4: Kopieren des Datenfiles


Als nächstes begibt man sich in den Zielordner, den man zuvor ggfs. neu erstellt hat. Man klickt in den Ordner und drückt gleichzeitig die ctrl-Taste. In dem Menü, welches sich nun öffnet, wählt man Objekt einsetzen aus (siehe Abb. 5).

Abb. 5: Einsetzen des Datenfiles


Die Datei ist nun im Zielordner gespeichert. Die entsprechende Datei kann anschließend gegebenenfalls aus dem Download-Ordner gelöscht werden.

Anstatt die Datei zu kopieren, in einen neuen Ordner einzufügen und zu löschen, kann man auch das Drag & Drop Prinzip benutzen, und die Datei mit der Maus einfach an den gewünschten Zielort ziehen.

3. Datei in RStudio einlesen

Nachdem das Datenfile heruntergeladen und am gewünschten Zielort gespeichert ist, kann R-Studio 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. 6). 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. 6: 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. 7).

In neueren RStudio-Versionen steht From Text (base) und From Text (readr) anstatt From CSV. Beides kann genutzt werden, um CSV-Dateien einzulesen. base ist ein Standardpaket, welches in R von Beginn an vorinstalliert ist. Um readr() nutzen zu können, muss man erst das gleichnamige Paket herunterladen. Die nachfolgend genannten Schritte beziehen sich auf die Benutzung von From Text (readr).

Dazu sind nachfolgende Schritte nötig:

Abb. 7: 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. 8).

Abb. 8: 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. 9). In diesem Skript geben wir auch unseren Quellcode ein.

Abb. 9: Öffnen eines neuen Skriptes


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

Um das R-Skript zu speichern sollte man unter File > Save as auswählen (siehe Abb. 10).

Alternativ kann man hier auch den Kurzbefehl CMD ⌘ + S zum speichern nutzen.

Abb. 10: Skript abspeichern


Es öffnet sich nun ein Fenster in dem unter Save File der Name des Skriptes eingegeben werden kann (siehe Abb. 11). Unter dem Punkt Where wird der Speicherort des Skriptes festgelegt. Es ist wichtig das Skript in dem gleichen projektspezifischen Zielordner zu speichern, in welchem auch schon der Datensatz gespeichert wurde (siehe 1. Datei herunterladen).

Abb. 11: Speichername und Speicherort des Skripts festlegen


Schritt 2: Das Working Directory setzen

Egal, von welchem Typ unser Datenfile ist, müssen wir zunächst mit dem Befehl setwd() das Working Directory festlegen. In die Klammern muss dabei der Pfad des Ordners, in dem wir arbeiten wollen, eingetragen werden.

Der Pfad eines Ordners kann unter Mac kopiert werden, indem man den Ordner einmal anklickt (d.h. nur markiert, dann ist er blau hinterlegt) und dann den Kurzbefehl Alt ⌥ + CMD ⌘ + C ausführt (siehe Abb. 12).

Abb. 12: Tastenkombination zum Kopieren des Ordnerpfades


Nun begibt man sich zurück in RStudio und fügt den kopierten Pfad als Argument der Funktion setwd() in die Klammern des Befehls ein. Das kann man mit der Tastenkombination CMD ⌘ + V tun. Man muss darauf achten, dass man den Dateipfad mit " " oder ' ' umschließt (siehe Abb. 13).

Abb. 13: Festlegen des Working Directorys


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

Abb. 14: Anzeige des aktuell gesetzten Working Directorys


An dieser Stelle sollte noch einmal kontrolliert werden, ob das Datenfile mit dem gearbeitet werden soll, in dem Ordner gespeichert ist, welcher nun als Working Directory gesetzt ist. Um diese Überprüfung vorzunehmen, kann man im rechten unteren Panel unter dem Reiter Files > More auswählen. Unter dem sich dann öffnenden Menü sollte Go to Working Directory angeklickt werden (siehe Abb. 15).

Abb. 15: Inhalte des Working Directory im rechten unteren Panel anzeigen lassen


Es öffnet sich im rechten unteren Panel bei RStudio nun der als Working Directory gesetzte Ordner mit allen Dateien, die in ihm gespeichert sind. Wenn das Datenfile, wie unter 2. Verschieben der Datei in den Arbeitsordner beschrieben, richtig im Zielordner - also in dem als Working Directory gesetzten Ordner - abgespeichert ist, sollte es nun im rechten unteren Panel mit angezeigt werden.

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 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. 16) wurde der Name daten gewählt.

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


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

Abb. 17: 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. 18). Der restliche Vorgang bleibt unverändert. Auch hier sollte in der Ansicht des Workspace (Reiter Enviroment im rechten oberen Panel) ein neues Datenobjekt erscheinen.

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


Will man den Inhalt des neuen eingelesenen Datenobjektes anschauen, kann man im rechten oberen Panel (Environment) 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. 19).

Abb. 19: 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. 20).

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


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

Abb. 21: Auswählen des richtigen Icons


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

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


Bestätigt man die Auswahl mit Open, 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. 23).

Abb. 23: 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. 24).

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


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

Abb. 25: 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. 26).

Abb. 26: 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. 27).

Abb. 27: Das Fenster zum Importieren


In der Ansicht des Workspace im rechten oberen Panel sollte nun der neue Dataframe zu finden sein (siehe Abb. 28).

Abb. 28: 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.


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.