เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

สร้าง factor แบบมีลำดับ

ลองดูกราฟที่แสดงอยู่ทางขวา กราฟดูดีทีเดียว แต่สังเกตลำดับของแท่งกราฟดู! เนื่องจากตอนสร้าง factor ไม่ได้ระบุลำดับไว้ R จึงเรียงระดับตามตัวอักษรแทน ซึ่งเราทราบกันดีแล้วว่า credit rating มีลำดับของตัวเอง และกราฟควรสะท้อนลำดับนั้นด้วย!

เป็นการทบทวน ลำดับของ credit rating จาก ความเสี่ยงน้อยที่สุด ไปยัง ความเสี่ยงมากที่สุด คือ:

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

ในการกำหนดลำดับให้กับ factor มี 2 วิธี

วิธีแรก — ระบุ ordered = TRUE พร้อมกำหนด levels ตามลำดับจากน้อยไปมากตอนสร้าง factor:

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

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

วิธีที่สอง — สำหรับ factor ที่ยังไม่มีลำดับอย่าง 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

สังเกตเครื่องหมาย < ที่แสดงลำดับของ levels ซึ่งไม่มีมาก่อน!

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

R เบื้องต้นสำหรับการเงิน

ดูคอร์ส

คำแนะนำการฝึกหัด

  • character vector credit_rating อยู่ใน workspace ของคุณแล้ว
  • ใช้ฟังก์ชัน unique() กับ credit_rating เพื่อแสดงเฉพาะค่าที่ไม่ซ้ำกันใน character vector ค่าเหล่านี้จะเป็น levels ของคุณ
  • ใช้ factor() เพื่อสร้าง ordered factor สำหรับ credit_rating แล้วเก็บไว้ในตัวแปร credit_factor_ordered อย่าลืมระบุ levels จากความเสี่ยงน้อยไปมาก!
  • Plot 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
แก้ไขและรันโค้ด