Praktische Übung in der Veranstaltung Informationstechnologien im Wald I
Daten: Ladet die Datei urliste.txt aus dem Moodle-Raum herunter und speichert sie lokal ab. Wenn ihr an den Computern der HNEE arbeitet, dann nutzt das P-Laufwerk.
Bestimmt das Skalenniveau der folgenden Merkmale/Variablen!
Öffnet RStudio und anschließend ein R-Skript (Was ist ein
R-Skript? Einführung
in RStudio). Importiert die zuvor heruntergeladene Datei
urliste.txt. Nutzt dafür das Symbol Import Dataset im
oberen rechten Fenster des Environment Registers
oder verwendet den Befehl
read.delim()
:
urliste <- read.delim("~/Bachelor/Lehre/SOEW/urliste.txt")
head(urliste)
Passt den Verzeichnispfad an euren eigenen an!
Wir starten mit einem Häufigkeitsdiagramm für eines der qualitativen
Merkmale in unserer Urliste, z.B. mit dem Merkmal Baumart
(nominal). Wir möchten darstellen, wieviele Bäume in unserer Stichprobe
einer Spezies angehören. Bevor wir das Diagramm erstellen, berechnen wir
die Häufigkeiten und speichern sie in einem neuen data frame.
Der benötigte Befehl lautet table()
. Mit
print()
wird das Ergebnis in die Konsole geschrieben:
freq <- table(urliste$Baumart)
print(freq)
GFI GKI RBU
2 6 4
Die im erzeugten data frame freq gespeicherten Werte können nun visualisiert werden:
barplot(freq,
col = "skyblue", # Farbe der Balken
xlab = "Baumart", # x-Achsen-Beschriftung
ylab = "Anzahl", # y-Achsen-Beschriftung
border = "black")
Geht genauso vor für das Merkmal Guete.
Beachtet, dass ihr im Code den Spaltennamen Baumart
entsprechend durch Guete ersetzen müsst. Wenn ihr als Argument
in barplot()
horiz = TRUE mit verwendet, werden
die Balken horizontal dargestellt.
Alternativ lassen sich die relativen Häufigkeiten in einem Piechart oder Kuchendiagramm darstellen. Dafür müssen die relativen Häufigkeiten aber erst berechenet werden, ähnlich wie für die absoluten Häufigkeiten qualitativer Merkmale. Für das Merkmal Baumart funktioniert das folgendermaßen:
relative <- prop.table(freq) #macht aus absoluten relative Häufigkeiten
prozent <- round(relative * 100, 1) #macht aus relativen prozentuale Häufigkeiten
Die prozentualen Häufigkeiten der Baumarten unserer Urliste können wir dann entsprechend in einem Piechart visualisieren:
labels <- paste(names(relative), "=", prozent, "%") #definiert die Beschriftung
pie(relative,
labels = labels,
col = rainbow(length(relative)))
Ihr könnt außerdem beide qualitativen Merkmale in einem sogenannten gestapelten Säulendiagramm visualisieren. Auch dafür wird zuerst eine kombinierte Häufigkeitstabelle erstellt:
freq_table <- table(urliste$Baumart, urliste$Guete)
print(freq_table)
A B C D
GFI 0 0 2 0
GKI 0 4 2 0
RBU 1 1 0 2
Hier das dazugehörige Diagramm:
barplot(freq_table,
col = c("skyblue", "salmon", "darkgrey"), # Farben für die Kategorien
xlab = "Guete",
ylab = "Anzahl",
legend.text = TRUE, # Legende hinzufügen
args.legend = list(x = "topright")) # Legendenposition
Wenn wir in unsere Urliste schauen, finden wir nur ein quantitatives kontinuierliches Merkmal, dass der Verhältnisskala zuzuordnen ist: den Brusthöhendurchmesser BHD. Die Beobachtungswerte des BHD lassen sich nicht einzeln zählen und in einem Säulendiagramm darstellen, da sehr wahrscheinlich jeder Messwert genau einmal vorkommt und daher die Häufigkeit = 1 beträgt. Für kontinuierliche Merkmale nutzen wir das Histogramm zur Darstellung der Häufigkeiten. Im Histogramm werden die Beobachtungswerte zuvor definierten Klassen zugewiesen:
hist(urliste$BHD,
xlab = "BHD [cm]",
ylab = "abs. Häufigkeit",
main = "",
col = "orange")
Desweiteren lassen sich für quantitative kontinuierliche Merkmale mit
Hilfe der Funktion summary()
einige wichtige
deskriptive Lageparameter berechnen:
summary(urliste$BHD)
Min. 1st Qu. Median Mean 3rd Qu. Max.
13.80 17.93 19.20 20.07 22.05 31.60
Die deskriptiven Streuparameter lassen sich entweder aus den Ergebnissen oder mit Hilfe weiterer Funktionen berechnen:
IQR(urliste$BHD) #Interquartilsabstand
[1] 4.125
range(urliste$BHD) #Spannweite
[1] 13.8 31.6
var(urliste$BHD) #Varianz
[1] 20.43841
sd(urliste$BHD) #Standardabweichung
[1] 4.520886
Ein weiteres wichtiges Diagramm zur Darstellung der Verteilung der Beobachtungswerte ist der Box-and-Whisker Plot. Darin enthalten sind Minimum, 1. Quartil, Median, 3. Quartil und Maximum:
boxplot(urliste$BHD,
ylab = "BHD [cm]",
col = "green")
Was ist auffällig bei der Betrachtung des Boxplots?
Ende der Übung