Eine kleine Einführung in R Dies ist eine kleine Einführung in die wichtigsten Konzepte der Statistik-Software R, die in der ersten Vorlesungswoche besprochen wird. Die Einführung ist so ausgelegt, dass Sie alle Schritte auf Ihrem eigenen Rechner nachvollziehen können. Sie sollten das auch unbedingt zu Hause tun und prüfen, ob Sie die gleichen Ausgaben erhalten wie in diesem Dokument. • Zuerst müssen Sie R installieren. Eine Anleitung dazu gibt es in RTipps.pdf. • Zusätzlich sollten Sie R Studio installieren. Dieses Programm bietet Ihnen eine verbesserte graphische Oberfläche für R. Diese Hilfe orientiert sich an der Oberfläche von R Studio. Wie Sie R als einfachen Taschenrechner nutzen Öffnen Sie R Studio. Am Anfang haben Sie im Fenster, das Console heisst, eine Befehlszeile vor sich. Mit der Befehlszeile können Sie direkt Kommandos zu R schicken. Die Befehle tippen Sie ein, und am Ende drücken Sie die EINGABE-Taste. Für einfache Rechenoperationen verwenden Sie +-/ und *. Das sieht z.B. so aus 3+4 ## [1] 7 3-4 ## [1] -1 Die Ausgabe des Programms wird in diesem Dokument also mit ## gekennzeichnet. Wie Sie Variablen nutzen Wenn die Berechnungen komplizierter werden, benötigt man Variablen. Variablen sind Namen, denen man Daten zugewiesen hat. Sie speichern diese Daten ab. Die Zuweisung von Daten zu einer Variablen erfolgt mit <-: a <- 3 + 2 Dann kann man den berechneten Wert später gebrauchen: c <- a*2 Will man den Wert einer Variablen wissen, kann man einfach den Namen eingeben. c ## [1] 10 Wenn Sie wissen möchten, welche Variablen Sie schon definiert haben . . . 1 ls() ## [1] "a" "c" Die Gesamtheit der definierten Variablen bezeichnet man auch als workspace bzw. Arbeitsbereich. Wie Sie Funktionen verwenden R beinhaltet viele eingebaute Funktionen. Funktionen in R funktionieren ähnlich wie mathematische Funktionen. Sie formen einen Wert in einen anderen um. Die Funktion sqrt bildet beispielsweise die Wurzel des Argumentes: sqrt(c) ## [1] 3.162278 sqrt(100) ## [1] 10 Wenn Sie wissen möchten, was eine Funktion macht, dann verwenden Sie ?Funktionsname ?sqrt Je nach Benutzeroberfläche öffnet sich ein Fenster mit einer Beschreibung der Funktion sqrt. Wenn Sie wissen, was Sie tun möchten und die entsprechende Funktion suchen, dann können Sie das mit ??Stichwort machen: ??median Sie erhalten eine Reihe von Funktionen, die etwas mit dem Median zu tun haben. Hinter jeder Funktion steht eine Kurzbeschreibung, mit deren Hilfe Sie rausfinden können, was die Funktion tut. Wenn die Kurzbeschreibung nicht eindeutig genug ist, dann müssen Sie notfalls auf den Funktionsnamen klicken, um den Hilfstext aufzurufen. Die gewünschte Funktion ist in diesem Falle stats::median, wobei stats:: die Gruppe von Funktionen zeigt, zu der die Funktion median gehört. Sie gehört zu den Statistikfunktionen. Wie Sie das Working Directory setzen Sie möchten nun ein Projekt beginnen. Sie erstellen irgendwo ein Verzeichnis für das Projekt, beispielsweise /home/christian/beispielprojekt. Unter Windows wäre der Verzeichnispfad vielleicht c:/Users/christian/beispielprojekt. Damit R dieses Verzeichnis automatisch verwendet, wenn Sie Daten abspeichern oder laden, müssen Sie explizit das working directory bzw. Arbeitsverzeichnis angeben. Das laufende Arbeitsverzeichnis finden Sie mit getwd() ## [1] "/home/christian/Dropbox/Projekte/EWF/REinfuehrung" Sie können ein neues Verzeichnis wie folgt bestimmen: 2 setwd('/home/christian/beispielprojekt/') , wobei setwd für set working directory steht. getwd() ## [1] "/home/christian/beispielprojekt" Sie können das Arbeitsverzeichnis in R Studio auch unter Session | Set Working Directory setzen. Wie Sie optionale Argumente verwenden Wir möchten jetzt den folgenden Datensatz einer repräsentativen Umfrage zum Käse - und Schokoladenkonsum in einer Bevölkerung (in g pro Woche) analysieren: Kaese; Schokolade 300; 250 100; 130 1000; 0 400; 200 500; 600 100; 50 345; 670 100; 50 Kopieren Sie die obigen Zeilen, fügen Sie diese in eine Textdatei ein, und speichern Sie die Textdatei mit der Endung csv im Projektordner ab, z.B. unter dem Namen umfrage.csv. Wenn Sie jetzt den Befehl dir() ## [1] "beispielskript.R" "umfrage.csv" eingeben, sollten Sie die Datei sehen. Die Funktion read.table kann die Daten in R einlesen. Zuerst informieren Sie sich, wie man das tut via ?read.table Leider ist der Hilfstext recht esoterisch. Nach einer kurzen Beschreibung wird einem die Nutzung erklärt . . . [...] Usage read.table(file, header = FALSE, sep = "", quote = "\"'", dec = ".", numerals = c("allow.loss", "warn.loss", "no.loss"), row.names, col.names, as.is = !stringsAsFactors, na.strings = "NA", colClasses = NA, nrows = -1, skip = 0, check.names = TRUE, fill = !blank.lines.skip, strip.white = FALSE, blank.lines.skip = TRUE, comment.char = "#", allowEscapes = FALSE, flush = FALSE, 3 stringsAsFactors = default.stringsAsFactors(), fileEncoding = "", encoding = "unknown", text, skipNul = FALSE) [...] . . . oder auch nicht erklärt. Glücklicherweise muss man hier nicht alles verstehen, denn alle Funktionsargumente, die ein Gleichheitszeichen haben, z.B. header = FALSE, sind optional. Das bedeutet, Sie müssen sie nicht benutzen. Wenn Sie diese Funktionsargumente nicht explizit setzen, dann nehmen sie die Werte an, die nach dem Gleichheitszeichen stehen. Das Argument header nimmt also den Wert FALSE an - was auch immer das konkret bedeutet. Jedes der aufgeführten Argumente wird im nachstehenden Hilfstext erläutert. Zwingend anzugeben ist das Argument file, weil es den Namen der Datei angibt. Die für uns wichtigsten optionalen Argumente sind • header : Enthält die erste Zeile die Variablennamen? • sep : Mit welchem Zeichen werden die Spalten getrennt? • dec : Mit welchem Zeichen werden Dezimalzahlen geschrieben? In unserem Fall enthält die Datei die Variablennamen und die Spalten werden mit einem Semikolon getrennt. Sie können daher die Daten mit dem folgenden Befehl in R laden meineDaten <- read.table("umfrage.csv", header = T, sep=";") wobei T für TRUE steht. Die optionalen Argumente werden also hinter den obligatorischen Argumenten mit = gesetzt. Sie können sich anschauen, was Sie da geladen haben, indem Sie sich die ersten Einträge ausgeben lassen: head(meineDaten) ## ## ## ## ## ## ## 1 2 3 4 5 6 Kaese Schokolade 300 250 100 130 1000 0 400 200 500 600 100 50 Wichtig ist hier, dass meineDaten auch erst mal nur eine Variable ist. Also ein Name, unter dem Daten gespeichert sind. In diesem Fall also der gesamte Datensatz. Das besondere ist hier nun, dass die Daten verschiedene Felder haben, unter denen bestimmte Daten gespeichert sind. Hier sind die Feldnamen die Namen der Merkmale. Mit $ kann man nun auf die Merkmale zugreifen: meineDaten$Schokolade ## [1] 250 130 0 200 600 50 670 50 median(meineDaten$Schokolade) ## [1] 165 4 Dieser Art von Daten begegnet man überall in R, weil sich so Daten, die zusammengehören, mit einer Variablen zusammenfassen lassen. Die $-Notation ist manchmal etwas mühsam. Mit attach kann man die Spalten des Datensatzes dem Arbeitsbereich zuweisen: attach(meineDaten) Jetzt geht es auch direkt median(Kaese) ## [1] 322.5 Schauen Sie sich noch einmal den Arbeitsbereich an: ls() ## [1] "a" "c" "meineDaten" Wenn Sie R mit q() schliessen, erscheint deshalb eine Frage wie Save workspace image to ~/pfad/.RData? [y/n/c]:. Wenn man möchte, kann man also die definierten Variablen in der Datei .RData abspeichern. Dann kann man in einer neuen R - Sitzung bei dem Stand weitermachen, wo man aufgehört hat. Schliessen Sie jetzt R und geben Sie y ein, wenn die Frage erscheint. Wenn Sie jetzt die Variablen wieder herstellen möchten, gehen Sie zu dem Verzeichnis Ihres Projektes und öffnen Sie die Datei .Rdata mit R Studio. Sie sollten mit ls() überprüfen, dass Sie die gleichen Variablen im Arbeitsbereich haben. Wie Sie Skripte nutzen Zu guter Letzt möchten Sie vielleicht alle Arbeitsschritte abspeichern, so dass Sie nicht immer wieder von vorne mit der Datenanalyse anfangen müssen. Um das zu tun, schreiben Sie einfach alle Befehle in eine Textdatei, ein Skript. Z.B. können Sie die folgenden Befehle d <- 2 e <- 3 f <- e*d print(f) in eine Datei beispielskript.R im Arbeitsverzeichnis speichern. R Studio enthält einen Menupunkt File | New File | R Script, welcher automatisch einen Editor öffnet mit dem Sie ein Skript schreiben können. Ruft man diese Datei mit der Funktion source auf, werden die Berechnung ausgeführt. source("beispielskript.R") ## [1] 6 Im Gegensatz zu Befehlen, die man direkt in die Befehlszeile eingibt, reicht es nicht aus, einfach den Variablennamen in das Skript zu schreiben. Man muss die Ausgabe explizit mit print herbeiführen. Übrigens brauchen Sie den Befehl source nicht in R Studio eingeben. Sie können einfach auf das Symbol mit dem Text Run drücken. Das Ergebnis ist das gleiche. 5 Wie geht es weiter? • Lesen Sie sich die RTipps.pdf durch und probieren Sie einige Statistikfunktionen aus. • Wenn Sie mehr wissen möchten, gibt es dutzende gute Einführungen im Netz. • Das offizielle Handbuch ist http://cran.r-project.org/doc/manuals/R-intro.html . 6
© Copyright 2024 ExpyDoc