Einen geordneten Faktor erstellen
Schau dir das Diagramm auf der rechten Seite an. Sieht gut aus – aber achte auf die Reihenfolge der Balken! Beim Erstellen des Faktors wurde keine Reihenfolge angegeben, daher hat R beim Plotten die Stufen einfach alphabetisch sortiert. Inzwischen weißt du, dass Bonitätsratings eine festgelegte Reihenfolge haben, und das sollte sich auch in deinen Plots widerspiegeln!
Zur Erinnerung: Die Reihenfolge der Bonitätsratings von niedrigstem Risiko zu höchstem Risiko ist:
AAA, AA, A, BBB, BB, B, CCC, CC, C, D
Um deinen Faktor zu ordnen, hast du zwei Möglichkeiten.
Beim Erstellen eines Faktors gibst du ordered = TRUE an und fügst die eindeutigen Stufen in der Reihenfolge von niedrig nach hoch ein:
credit_rating <- c("AAA", "AA", "A", "BBB", "AA", "BBB", "A")
credit_factor_ordered <- factor(credit_rating, ordered = TRUE,
levels = c("AAA", "AA", "A", "BBB"))
Für einen bestehenden ungeordneten Faktor wie credit_factor verwendest du die Funktion ordered():
ordered(credit_factor, levels = c("AAA", "AA", "A", "BBB"))
Beide Wege führen zu:
credit_factor_ordered
[1] AAA AA A BBB AA BBB A
Levels: AAA < AA < A < BBB
Beachte das <, das die Reihenfolge der Stufen angibt – das war vorher nicht da!
Diese Übung ist Teil des Kurses
Einführung in R für Finance
Anleitung zur Übung
- Der Character-Vektor
credit_ratingist in deinem Workspace vorhanden. - Verwende die Funktion
unique()mitcredit_rating, um nur die eindeutigen Einträge des Character-Vektors auszugeben. Das werden deine Stufen. - Verwende
factor(), um einen geordneten Faktor fürcredit_ratingzu erstellen, und speichere ihn alscredit_factor_ordered. Achte darauf, die Stufen in der Reihenfolge von geringstem zu größtem Risiko anzugeben! - Plotte
credit_factor_orderedund schau dir die neue Reihenfolge der Balken an.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Use unique() to find unique words
unique(___)
# Create an ordered factor
credit_factor_ordered <- factor(___, ordered = ___, levels = c(___))
# Plot credit_factor_ordered