Podział zmiennej numerycznej na przedziały i zamiana w czynnik
Twój stary znajomy Dan przesłał ci listę 50 obligacji z ratingiem AAA o nazwie AAA_rank. Każdej obligacji przypisał dodatkową liczbę od 1 do 100, opisującą jego zdaniem jej potencjalną rentowność (100 oznacza największą rentowność). Chcesz przeprowadzić dalszą analizę jego propozycji, ale najpierw przydałoby się pogrupować obligacje według rankingu. Dzięki temu łatwiej będzie analizować grupy – od najmniej do najbardziej rentownych.
To świetny przykład tworzenia czynnika z wektora numerycznego. Najwygodniej zrobić to za pomocą funkcji cut(). Poniżej ranking Dana (1–100) jest dzielony na 5 równych przedziałów. Zwróć uwagę, że ( przy poziomach czynnika oznacza, że dana liczba nie jest wliczana do grupy, natomiast ] oznacza, że liczba jest do niej wliczana.
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]
W funkcji cut() parametr breaks = pozwala określić przedziały, według których R ma grupować twoje dane!
To ćwiczenie jest częścią kursu
Wprowadzenie do R dla finansów
Instrukcje do ćwiczenia
- Zamiast 5 przedziałów utwórz tylko 4. W argumencie
breaks =użyj wektora od 0 do 100, gdzie kolejne elementy różnią się o 25. Wynik przypisz do zmiennejAAA_factor. - Nazwy 4 przedziałów są mało opisowe. Użyj funkcji
levels(), aby nadać poziomom nazwy:"low","medium","high"i"very_high"– właśnie w tej kolejności. - Wyświetl
AAA_factorz nowymi nazwami. - Narysuj wykres dla
AAA_factor, aby zwizualizować wyniki swojej pracy!
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Create 4 buckets for AAA_rank using cut()
AAA_factor <- cut(x = ___, breaks = ___)
# Rename the levels
# Print AAA_factor
# Plot AAA_factor
plot(___)