開始使用免費開始

建立有序因子

看看右側產生的圖。看起來不錯,不過注意長條的順序!建立因子時你沒有指定順序,所以 R 在繪圖時就依字母順序排列各層級。到現在為止,你已經知道信用評等是有順序的,圖形也應該反映這點!

提醒一下,從「風險最小」到「風險最大」的信用評等順序是:

AAA, AA, A, BBB, BB, B, CCC, CC, C, D

要替你的因子加上順序,有兩種做法。

在建立因子時,指定 ordered = TRUE,並依由低到高的順序提供不重複的層級:

credit_rating <- c("AAA", "AA", "A", "BBB", "AA", "BBB", "A")

credit_factor_ordered <- factor(credit_rating, ordered = TRUE, 
                                levels = c("AAA", "AA", "A", "BBB"))

對於像 credit_factor 這種已存在的無序因子,可以使用 ordered() 函式:

ordered(credit_factor, levels = c("AAA", "AA", "A", "BBB"))

兩種方法的結果相同:

credit_factor_ordered

[1] AAA AA  A   BBB AA  BBB A  
Levels: AAA < AA < A < BBB

注意先前沒有的「<」符號,現在用來標示層級的順序!

本練習屬於課程

R for Finance 入門

檢視課程

練習說明

  • 工作空間中已提供字元向量 credit_rating
  • 使用 unique() 搭配 credit_rating,只列印此字元向量中的不重複字詞。這些將會是你的層級。
  • 使用 factor()credit_rating 建立一個有序因子,並將其存為 credit_factor_ordered。記得依風險由小到大的順序列出層級!
  • 繪製 credit_factor_ordered,並留意長條的新順序。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Use unique() to find unique words
unique(___)

# Create an ordered factor
credit_factor_ordered <- factor(___, ordered = ___, levels = c(___))

# Plot credit_factor_ordered
編輯並執行程式碼