Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Umgang mit R unter Windows Stand:2014-10-15. R: Software R für Windows (XP etc.) Version 3.0R Linksammlung zu R: R-Studio.

Ähnliche Präsentationen


Präsentation zum Thema: "Umgang mit R unter Windows Stand:2014-10-15. R: Software R für Windows (XP etc.) Version 3.0R Linksammlung zu R: R-Studio."—  Präsentation transkript:

1 Umgang mit R unter Windows Stand:2014-10-15

2 R: Software R für Windows (XP etc.) Version 3.0R Linksammlung zu R: http://www.uni-due.de/hummell/R/ R-Studio für Windows, Linux, Mac OS (Ascii-Text) Editoren:Ascii Tinn-R; Notepad++ (ggf. mit der Erweiterung NppToR)Tinn-RNotepad++ http://www.uni-due.de/hummell/tools/

3 Umgang mit R unter Windows Vorschlag zur Organisation der Datenablage: Arbeits-Verzeichnis für Daten unter Windows anlegen (-> „WorkingDirectory“) z.B. „R_DATA“ Dort Icon für Verknüpfung mit R anlegen (R lädt dann ggf. den dort gespeicherten Workspace (s.u.)) sowie ggf. Icon für Verknüpfung mit einem ASCII-Text- Editor anlegen ggf. Kommunikation des Ascii-Text-Editors (z.B. Notepad++) mit „R“ herstellen

4 WorkingDirectory (Arbeits-Verzeichnis) Unter R WorkingDirectory ermitteln : getwd() Ggf. WorkingDirectory ändern mit Windows GUI oder: setwd(“ “) NB.: Bei Pfadangaben unter „R“ statt “\“ immer entweder “/“ oder “\\“nehmen, da “\“ eine sog. Escape-Sequenz einleitet.

5 Auf Dateien im WorkingDirectory zugreifen Inhalt des WorkingDirectory anzeigen: dir() Ascii-Text-Dateien ansehen: file.show(“ “) Systemfunktionen nutzen: z.B. PDF‘s, JPEG‘s ansehen: system(“open “) Funktioniert auch mit Dateien im Internet system(“open / / “)

6 Workspace (Arbeitsbereich) Objekte im Workspace von R auflisten: objects(); auch: ls() Objekte selektiv auflisten: ls(pat=“ “) Ggf einen bestimmten gespeicherten Workspace laden: (R lädt standardmäßig den Workspace des Verzeichnisses, aus dem es aufgerufen wurde) Mit Windows GUI oder: load(“ “) [NB!: “ “ ist i.d.R. binäre Datei]

7 Workspace (Arbeitsbereich) Einzelne Objekte aus Workspace entfernen: rm(,,..., ) Alle Objekte entfernen: rm(list=objects()); rm(list=ls()) Objekte selektiv entfernen: rm(list=ls(pat=“ “)) Workspace (als binäre Datei) sichern (speichern) mit Windows GUI oder: save.image(“ “) Als Ascii-Datei speichern: save.image(“ “,ascii=TRUE)

8 Befehls-History History ausgeben: history(); history(max.show=n); history(reverse=TRUE) History laden bzw. speichern mit Windows GUI “ “ ist ASCII-Text-Datei

9 Ergebnisse sichern und ausgeben Ausgabe in ASCII-Text-Datei umleiten: sink(“ “) Erweitert: sink(“ “, append=TRUE,split=TRUE) Ausgabeumleitung beenden: sink() Komplette Ausgabe der Sitzung in ASCII-Text-Datei (z.B. “lastsave.txt“) speichern mit Windows GUI Alle Objekte in ASCII-Text-Datei speichern dump(list = objects(), “ “)

10 Pakete Auf dem Rechner vorhandene Pakete anzeigen: library() Geladene (d.h. im Suchpfad befindliche) Pakete anzeigen: search() Paket laden: library( ); auch: require ( ) Paket aus dem Suchpfad entfernen: detach(package: )

11 Hilfe Allgemeine Hilfe: help.start() Hilfe zu einem Paket: help(package=“ “); help( ); ? Hilfe zu Funktionen etc. help( ); ? ; help.search(“ “); ?? Infos zum Umfeld der Funktionen: apropos(“ “) Beispiele für Funktionen: example( )

12 Import von Datentabellen im Ascii-Text-Format (1) Tabelle (im ASCII-Text-Format) importieren: read.table(“ “) und im Workspace ablegen: “) Dadurch wird ein Objekt der Klasse „data.frame“ erzeugt Klassenzugehörigkeit feststellen: class( ) Prüfen mit: is.data.frame( )

13 Import von Datentabellen im Ascii-Text-Format (2) Tabelle (im ASCII-Text-Format) über Zwischenablage importieren: read.table(stdin()) Zu importierende Tabelle als Matrix im Workspace ablegen: “))

14 Matrix aus Datentabelle erzeugen und umgekehrt Erzeugen einer Matrix aus einem „data.frame“: ) Prüfen: is.matrix( ) Erzeugen einer Datentabelle aus Matrix: ) Prüfen: is.data.frame( )

15 Daten im ASCII-Text-Format exportieren Datentabelle bzw. Datenmatrix exportieren: write.table(,“ “) Daten als Matrix mit “,“ als Dezimalzeichen exportieren: require(MASS) options(OutDec=“,“) write.matrix(,“ “) options(OutDec=“.“)

16 Zeichenketten einlesen und exportieren Zeichenketten einlesen: dget(“ “) Zeichenkettenobjekt in Datei schreiben dput(,“ “) N.B. Bei dget() und dput() gehen Kommentare (mit “#“) verloren.

17 Weitere Einlesemöglichkeiten scan(): readLines(): Liest Text-Datei mit n Zeilen zeilenweise in Charakter String mit n Komponenten read.table(stdin()): Liest vom Clipboard Falls es sich um Zeichenketten handelt, können diese mit as.matrix(read.table(stdin()) als Charakter-String abgelegt werden

18 Import von Excel-Datenblättern (1) Beim Importieren von Excel-Datenblättern sind insbesondere folgende Spezialfälle zu berücksichtigen: Erstens: Zeichen für Feldseparatoren (US: “,“ - DE: “;“) bzw. Tabulator: (“\t“) als Separator Bei Import per Copy&Paste (“clipboard“) ist Tabulator (“\t“) der Feldseparator Zweitens: Dezimalzeichen (US: “.“ - DE: “,“) Drittens: Stehen Spaltennamen in der ersten Zeile ? (-> “header=T“) Viertens: Stehen Zeilennamen in der ersten Spalte ? (-> “row.names=“X“ “ bzw. “row.names=1“)

19 Import von Excel-Datenblättern (2) Standardmäßig gelten folgende Vorgabewerte: read.table (file, header=FALSE, sep=“ “, dec=“.“, …) read.csv (file, header=TRUE, sep=“,“, dec=“.“, …) read.csv2 (file, header=TRUE, sep=“;“, dec=“,“, …) read.delim (file, header=TRUE, sep=„“\t“, dec=“.“, …) read.delim2 (file, header=TRUE, sep=„“\t“, dec=“,“, …) “read.csv2()“ und “read.delim2()“ verwenden also deutsche Konventionen; haben aber unterschiedliche Feldseparatoren Beispiele: A) Excel-Datenblatt (im CSV-Format!) importieren : read.csv2(“ “) read.csv2(“ “, row.names=“X“)

20 Import von Excel-Datenblättern (3) B) Excel-Datenblatt über Zwischenablage (“clipboard“) importieren (Spaltennamen in erster Zeile ; Zeilennamen in erster Spalte): read.table(“clipboard“, sep=“\t“, dec=“,“, header=T, row.names=“X“) C) Excel-Datenblatt über Zwischenablage importieren (Keine Spaltennamen in erster Zeile und keine Zeilennamen in erster Spalte): read.table(“clipboard“, sep=“\t“,dec=“,“) mit Zeilennamen in erster Spalte: read.table(“clipboard“, sep=“\t“, dec=“,“, row.names=1) Statt read.table(... sep=“\t“, dec=“,“) auch: read.delim2(“clipboard“) verwenden Ergebnis ist in allen Fällen ein „data.frame“

21 Import von Excel-Datenblättern (4) Bestimmtes Datenblatt einer Excel-Datei einlesen (geht im Unterschied zu “read.csv2()“ nicht mit Dateien aus dem Netz; s.u.): require(xlsReadWrite) read.xls(“ “) read.xls(“ “,sheet = 1)

22 Export von Tabellen als Excel-Datei im CSV- Format write.csv2(,“ “)

23 Aus dem Netz importieren (1) Datentabellen im ASCII-Text-Format aus Netz importieren: read.table (con / / “)) read.table(“http:// / / “) CSV-Dateien aus Netz importieren: read.csv2(con / / )“,row.names=“X“)) read.csv2 (“http:// / / )“,row.names=“X“) read.csv2 (“http:// / / )“,row.names=1)

24 Aus dem Netz importieren (2) Skriptdatei (im ASCII-Text-Format) importieren: source(con / / “)) source(“http:// / / “) Binäre.RDatei importieren: load(con / / “))

25 Eigenschaften von R-Objekten ermitteln class( ) print( ); attributes( ) str( ) mode( ) typeof( ) length( ) summary( )

26 Datentypen, Datenstrukturen, weitere Objektklassen (1) Datentypen: numeric, character, (ordered) factor, logical Datenstrukturen: vector(), matrix() / array(), list(), data.frame() Abfragen, z.B.: is.numeric(), is.character(), is.ordered()... is.matrix(), is.array... NB.: Jede Matrix ist auch Array, aber nicht umgekehrt; hier besser Klassenzugehörigkeit bestimmen

27 Datentypen, Datenstrukturen, weitere Objektklassen (2) Transformieren: as.numeric(), as.factor(), as.ordered()... as.matrix(), as.data.frame()... N.B.: Numerisch kodierte Faktoren müssen erst in character umgewandelt werden: as.numeric(as.character( )) im Vergleich zu: as.numeric( ) Weitere Objektklassen z.B. dist, hclust etc.

28 Attribute von Matrizen attributes( )mode: list attributes( )$dimmode: numeric –dim( )mode: numeric attributes( )$dimnamesmode:list –dimnames( )mode: list –colnames( )mode: character –rownames( )mode: character –row.names( )mode: character

29 Attribute von DataFrames attributes( )mode: list attributes( )$namesmode: character attributes( )$row.namesmode: numeric (!) dim( )mode: numeric names( )mode: character colnames( )mode: character row.names( )mode: character rownames( )mode: character

30 Label von Zeilen und Spalten names(): Vektoren, Listen, Spalten von DataFrames rownames(), row.names(), dimnames()[[1]]: Matrizen, Arrays, DataFrames colnames(), dimnames()[[2]]: Matrizen, Arrays, DataFrames dimnames[[3]]: Arrays colnames() Matrizen, Arrays, DataFrames dimnames()[[2]]

31 Dimensionen von Vektoren, Matrizen, Arrays Matrizen und Arrays werden von R als Vektoren mit einem dim-Attribut geführt, das aus 2 bzw. 3 Zahlen besteht Vektoren und Skalare sind dagegen dimensionslos Extrahierte Zeilen oder Spalten einer Matrix verlieren ihr dim-Attribut, es sei denn man setzt Parameter [,,drop=F] Extrahierter Skalar einer Matrix hat ebenfalls dim=NULL, es sei denn [,,drop=F]

32 Zuweisung von neuen Attributen z.B. Zuweisung eines neuen Attributs “dok“ vom mode “character“ an ein Objekt (z.B. DataFrame) attr(, “dok“) “ attributes( ) attributes( )$dok attributes( )$dok “

33 Besonderheiten des Arbeitens mit DataFrames DataFrames sind Listen von (Spalten-)Vektoren gleicher Länge, welche jeweils Daten unterschiedlichen Typs beinhalten können: numeric, factors, ordered, character … Komponenten sind die Spalten (=“Variablen“), die statt über [,1],[,2] auch mit ihren Namen (sofern vorhanden) angesprochen werden können: $. Funktionen erlauben oft: “ (, data= )“ Zuweisung neuer Variablen zu DataFrames: $ Mit “attach( )“ kann der DataFrame so eingebunden werden, dass seine Variablen direkt (d.h. ohne Erwähnung des DataFrames) angesprochen werden können: “ “ statt “ $variable“


Herunterladen ppt "Umgang mit R unter Windows Stand:2014-10-15. R: Software R für Windows (XP etc.) Version 3.0R Linksammlung zu R: R-Studio."

Ähnliche Präsentationen


Google-Anzeigen