Mulai sekarangMulai gratis

Membagi variabel numerik ke dalam faktor (bucketing)

Teman lama Anda, Dan, mengirimkan daftar 50 obligasi berperingkat AAA bernama AAA_rank, dengan setiap obligasi memiliki angka tambahan dari 1–100 yang menggambarkan seberapa menguntungkan menurutnya obligasi tersebut (100 paling menguntungkan). Anda ingin melakukan analisis lanjutan atas sarannya, tetapi terlebih dahulu akan lebih baik jika obligasi dikelompokkan berdasarkan peringkatnya. Ini akan membantu Anda membuat kelompok obligasi, dari yang paling tidak menguntungkan hingga yang paling menguntungkan, agar lebih mudah dianalisis.

Ini adalah contoh yang bagus untuk membuat faktor dari vektor numerik. Cara termudah adalah menggunakan cut(). Di bawah ini, peringkat 1–100 dari Dan dibagi menjadi 5 kelompok dengan jarak yang sama. Perhatikan bahwa tanda ( pada level faktor berarti kita tidak menyertakan angka di sebelahnya dalam kelompok tersebut, dan tanda ] berarti kita menyertakan angka tersebut dalam kelompoknya.

head(AAA_rank)

[1]  31  48 100  53  85  73

AAA_factor <- cut(x = AAA_rank, breaks = c(0, 20, 40, 60, 80, 100))

head(AAA_factor)

[1] (20,40]  (40,60]  (80,100] (40,60]  (80,100] (60,80] 
Levels: (0,20] (20,40] (40,60] (60,80] (80,100]

Dalam fungsi cut(), penggunaan breaks = memungkinkan Anda menentukan kelompok yang Anda inginkan untuk digunakan R dalam membagi data!

Latihan ini merupakan bagian dari kursus

Pengantar R untuk Keuangan

Lihat Kursus

Instruksi latihan

  • Alih-alih 5 kelompok, bisakah Anda membuat hanya 4? Pada breaks =, gunakan sebuah vektor dari 0 hingga 100 dengan setiap elemen berjarak 25 angka. Tetapkan hasilnya ke AAA_factor.
  • Keempat kelompok tersebut belum memiliki nama yang deskriptif. Gunakan levels() untuk mengganti nama level menjadi "low", "medium", "high", dan "very_high", dalam urutan tersebut.
  • Cetak AAA_factor yang sudah dinamai ulang.
  • Plot AAA_factor untuk memvisualisasikan pekerjaan Anda!

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# Create 4 buckets for AAA_rank using cut()
AAA_factor <- cut(x = ___, breaks = ___)

# Rename the levels 


# Print AAA_factor


# Plot AAA_factor
plot(___)
Edit dan Jalankan Kode