FAQ

Überblick über das Öffnen verschiedener Dateien

Um Daten in R aufbereiten und bearbeiten zu können, muss man diese erst einmal einlesen können. Manchmal gestaltet sich das leider schwieriger als erwartet.

Im Folgenden wollen wir uns einige Methoden zum Einlesen gängiger Dateiformate in R anschauen. Das Dateiformat einer Datei erkennt man an seiner Endung.

Um die nachfolgenden Funktionen zu nutzen, müsst ihr einfach Dateipfad durch den Dateipfad eurer Datei ersetzen. Außerdem müsst ihr dem einzulesenden Objekt in R einen Namen zuweisen z.B. daten <- read.table( ); ansonsten wird die Datei nicht gespeichert im Environment. Natürlich könnt ihr euer Objekt auch anders benennen.

Kurzbefehl zum Kopieren des Dateipfads unter Mac

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.


Wenn ihr eine ausführlichere Anleitung zum Einlesen von Dateien in R haben wollt, schaut in dem Kapitel für Windows oder Mac nach.

.csv, .txt und .dat

Diese Dateiformate sind die am weitesten verbreiteten Tabellendateien. Alle drei können u.a. mit den folgenden Funktionen eingelesen werden:

Diese drei Funktionen sind sehr ähnlich aufgebaut. Sind haben aber teilweise unterschiedliche Voreinstellungen (sog. “defaults”). Zum Beispiel nimmt read.csv( ) an, dass Elemente aus verschiedenen Spalten in einer Zeile mit , getrennt. Dafür werden bei read.table( ) ohne weitere Spezifikation die Spaltennamen nicht eingelesen.

In Abhängigkeit der Speicherung der Dateien muss man teilweise noch weitere Argumente der Funktionen nutzen:

Um in Erfahrung zu bringen, welche Argumente ihr nutzen müsst, um die Daten korrekt einzulesen, könnt ihr einen Trial-and-Error Ansatz verwenden:

V1
uni,satis_uni,residence,satis_location_uni
FU,5.5130602101329025,S,4.4057101367098666
FU,7.233871516077954,Z,5.760182068473526
HU,12.890984224974451,Z,7.205686095942897
HU,8.691844540148681,Z,5.2505748559609025
FU,5.136949092682058,N,5.421972864044606
uni satis_uni residence satis_location_uni
FU 5.513060 S 4.405710
FU 7.233872 Z 5.760182
HU 12.890984 Z 7.205686
HU 8.691845 Z 5.250575
FU 5.136949 N 5.421973
HU 7.777371 O 6.593942

Nun wird die Datei korrekt dargestellt.

Hinweis: Es kann dabei Unterschiede zwischen verschiedenen Betriebssystemen, innerhalb der Versionen des gleichen Betriebssystems oder zwischen verschiedenen Versionen von Programmen zum Lesen von Tabellendaten (z.B. Excel) geben. Lasst euch also nicht verunsichern, wenn der selbe Datensatz bei euch anders eingelesen werden muss (z.B. mit mehr Spezifikationen von Argumenten) als bei euren KommilitonInnen.

Mehr Informationen zu den Funktionen und ihren Argumenten findet ihr, wenn ihr unter read.table in der R-Dokumentation - ‘Help’ im unteren rechten Panel - nachschaut, oder indem ihr ?read.table in die Konsole eingebt.

.xls und .xlsx

Diese Endungen gehören zum Programm Excel. Man muss externe Pakete installieren, um Excel-Dateien in R einlesen zu können.

Um .xlsx-Dateien einzulesen, nutzen wir das Paket openxlsx.


library(openxlsx)
daten <- read.xlsx("Dateipfad")

Um .xls- und .xlsx-Dateien einzulesen, kann man das Paket readxl nutzen.


library(readxl)
daten <- read.xlsx("Dateipfad")

.sav

Die Endung .sav wird z.B. für SPSS-Dateien genutzt wird. Hierfür muss man wieder ein zusätzliches Paket - foreign - runterladen, um SPSS-Dateien in R einlesen zu können.


library(foreign)
daten <- read.spss("Dateipfad", to.data.frame = TRUE)
# ohne to.data.frame wird eine Liste erzeugt

Dateien via URL direkt aus dem Internet laden

Man kann Dateien auch direkt aus dem Internet laden mit Hilfe ihrer URL.


daten <- load(url("Dateipfad"))

Alternativ kann man die Datei auch herunterladen und dann in Abhängigkeit ihres Formats mit einem der oberen Befehle einlesen.

.R, .Rda und .Rmd

R-eigene Dateien kann man am besten öffnen, indem man auf sie klickt. Mac-Benutzer haben dabei manchmal das Problem, das sich die Datei per default in R öffnet.