Як використовувати функцію droplevels у r (з прикладами)


Функцію droplevels() у R можна використовувати для видалення невикористаних рівнів факторів.

Ця функція особливо корисна, якщо ми хочемо видалити рівні факторів, які більше не використовуються через підмножину вектора або кадру даних.

Ця функція використовує такий синтаксис:

падіння рівнів (x)

де x – об’єкт, з якого потрібно видалити невикористані рівні факторів.

Цей підручник містить кілька прикладів використання цієї функції на практиці.

Приклад 1: видалення невикористаних рівнів факторів у векторі

Припустимо, ми створюємо вектор даних із п’ятьма рівнями факторів. Далі припустимо, що ми визначаємо новий вектор даних лише з трьома з початкових п’яти рівнів факторів.

 #define data with 5 factor levels
data <- factor (c(1, 2, 3, 4, 5))

#define new data as original data minus 4th and 5th factor levels
new_data <- data[-c(4, 5)]

#view new data
new_data

[1] 1 2 3
Levels: 1 2 3 4 5

Хоча нові дані містять лише три фактори, ми бачимо, що вони все ще містять початкові п’ять рівнів факторів.

Щоб видалити ці невикористані рівні факторів, ми можемо використати функцію droplevels() :

 #drop unused factor levels
new_data < -droplevels (new_data)

#view data
new_data

[1] 1 2 3
Levels: 1 2 3

Нові дані тепер містять лише три рівні факторів.

Приклад 2: видалення невикористаних рівнів факторів у кадрі даних

Припустимо, ми створюємо фрейм даних, у якому одна зі змінних є п’ятирівневим фактором. Далі припустімо, що ми визначаємо новий фрейм даних, який видаляє два з цих факторних рівнів:

 #create data frame
df <- data. frame (region= factor (c('A', 'B', 'C', 'D', 'E')),
                 sales = c(13, 16, 22, 27, 34))

#view data frame
df

  regional sales
1 to 13
2 B 16
3 C 22
4 D 27
5 E 34

#define new data frame
new_df <- subset (df, sales < 25)

#view new data frame
new_df

  regional sales
1 to 13
2 B 16
3 C 22

#check levels of region variable
levels (new_df$region)

[1] “A” “B” “C” “D” “E”

Хоча нова база даних містить лише три фактори в стовпці регіону , вона все ще містить початкові п’ять рівнів факторів. Це створить проблеми, якщо ми спробуємо створити графіки, використовуючи ці дані.

Щоб видалити невикористані рівні факторів зі змінної region , ми можемо використати функцію droplevels() :

 #drop unused factor levels
new_df$region <- droplevels (new_df$region)

#check levels of region variable
levels (new_df$region)

[1] “A” “B” “C”

Тепер змінна регіону містить лише три рівні факторів.

Ви можете знайти більше посібників з R на цій сторінці .

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *