GNU R: Daten in R

Aus Wikibooks

Wechseln zu: Navigation, Suche
Nuvola apps bookcase.svg EDV Nuvola apps bookcase 1.svg GNU R


Daten in R können in Form verschiedener Objekte auftreten und auf vielfältige Weise manipuliert werden. Sie können direkt eingegeben oder über eine Textdatei oder Datenbank eingelesen und ausgegeben werden.

Inhaltsverzeichnis

[Bearbeiten] Datentypen (modes)

Die wesentlichen einfachen Datentypen sind:

  • numeric für Zahlen (wobei zwischen integer und double unterschieden werden kann)
  • complex für komplexe Zahlen
  • logical für logische Werte
  • character für Zeichen
  • raw für Bytes
> 5
> 3i+2
> TRUE
> "abcde"
> as.raw(65)

Zusätzlich gibt es einige etwas speziellere Datentypen, die zunächst nicht weiter behandelt werden sollen

  • function für Funktionen
  • call für Funktionsaufrufe
  • expression für Ausdrücke

Mit der Funktion mode() lässt sich der Datentyp eines Objekts bestimmen. Der mode ist eine grundlegende Eigenschaft eines jeden Objekts. Eine weitere grundlegende Eigenschaft ist length(). Zusätzliche Eigenschaften können mit attributes() ermittelt werden.

[Bearbeiten] Klassen

Aus einfachen Daten lassen sich verschiedene Arten von Datenstrukturen zusammensetzen. Dies sind

  • vector für Listen von Objekten gleichen Typs
  • list für beliebige Listen von Objekten (auch rekursiv)
  • factor für Vektoren zur Gruppierung von Objekten
  • matrix
  • array
  • data.frame
  • ...

Welche Datenstruktur ein Objekt besitzt kann mit class() ermittelt werden. Klassen sind ein allgemeines Konzept von erweiterten Datentypen. Jedes Objekt besitzt eine Klasse, die mit einem einfachen Datentyp übereinstimmt oder zusätzlich festgelegt werden kann.

Klassen sind wichtig für so genannte generische Funktionen, die je abhängig von der Klasse eines übergebenen Objekts arbeiten. Beispielsweise gibt es die Klasse Date mit denen ein numerischer Wert als Datum interpretiert werden kann. Die Klasse eines Objekts lasst sich mit class() feststellen.

d <- as.Date("2005-01-01") # Umwandlung einer Zeichenkette in ein Date-Objekt
mode(d)
[1] "numeric"
class(d)
[1] "Date"


[Bearbeiten] Zeichenketten

Zeichen oder Zeichenketten werden mit einfachen oder doppelten Anführungszeichen geschrieben.

h <- "Hallo"
w <- 'Welt!'
paste(h,w,sep=", ")
[1] "Hallo, Welt!"


Dabei werden die Daten als n-Dimensionale Vektoren gespeichert. Mehrere dieser Vektoren können zu einer Matrix zusammengefügt werden.

Die Vektoren können drei verschiedene Datentypen enthalten, numerische und logische Werte, sowie Text.

Des weiteren existieren Funktionen, mit welchen Datenreihen erzeugt werden können.

[Bearbeiten] Manuelle Dateneingabe

Eine einfache Möglichkeit manueller Dateneingabe ist die Funktion c :

c(5,3,4,8,6,2.5,0,1.3)

liest die Zahlenfolge "5, 3, 4, 8, 6, 2.5, 0, 1.3" ein. Wichtig ist hierbei, dass als Dezimaltrennzeichen ein Punkt stehen muss.

Der eben genannte Aufruf erzeugt nur die Ausgabe

[1] 5.0 3.0 4.0 8.0 6.0 2.5 0.0 1.3 

[Bearbeiten] Eingabe von logischen Werten:

abc <- c(TRUE,FALSE,TRUE,FALSE,FALSE,T,F,T,T)

speichert die logischen Werte in abc. TRUE kann immer mit T und FALSE mit F abgekürzt werden.

[Bearbeiten] Daten ausgeben

Durch die Eingabe eines Variablennamens in R wird der Inhalt des Vektors oder der Matrix auf dem Bildschirm ausgegeben.

x
[1] 5.0 3.0 4.0 8.0 6.0 2.5 0.0 1.3

[Bearbeiten] Variablen anzeigen

Der Befehl ls() listet alle Variablen auf, die sich in der aktuellen Worksession befinden.

[Bearbeiten] Inhaltsverzeichnis

Persönliche Werkzeuge