Як масштабувати лише числові стовпці в r (з прикладом)
Ви можете використовувати такий синтаксис із пакета dplyr , щоб масштабувати лише числові стовпці кадру даних у R:
library (dplyr) df %>% mutate(across(where(is. numeric ), scale))
У наступному прикладі показано, як використовувати цю функцію на практиці.
Приклад: масштабувати лише числові стовпці за допомогою dplyr
Припустимо, у R є наступний кадр даних, який містить інформацію про різних баскетболістів:
#create data frame df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'), dots=c(22, 34, 30, 12, 18), assists=c(7, 9, 9, 12, 14), rebounds=c(5, 10, 10, 8, 8)) #view data frame df team points assists rebounds 1 to 22 7 5 2 B 34 9 10 3 C 30 9 10 4 D 12 12 8 5 E 18 14 8
Припустімо, що ми хочемо використовувати функцію масштабування в R, щоб масштабувати лише числові стовпці кадру даних.
Для цього ми можемо використати такий синтаксис:
library (dplyr)
#scale only the numeric columns in the data frame
df %>% mutate(across(where(is. numeric ), scale))
team points assists rebounds
1 A -0.1348400 -1.153200 -1.56144012
2 B 1.2135598 -0.432450 0.87831007
3 C 0.7640932 -0.432450 0.87831007
4 D -1.2585064 0.648675 -0.09759001
5 E -0.5843065 1.369425 -0.09759001
Зверніть увагу, що значення в трьох числових стовпцях ( очки , результативні передачі та підбирання ) були масштабовані, тоді як стовпець команди залишився незмінним.
Технічні примітки
Функція scale() у R використовує такий базовий синтаксис:
scale(x, center = TRUE , scale = TRUE )
золото:
- x : назва об’єкта для масштабування
- center : чи віднімати середнє під час масштабування. Типовим значенням є TRUE.
- scale : чи ділити на стандартне відхилення під час масштабування. Типовим значенням є TRUE.
Ця функція використовує таку формулу для обчислення масштабованих значень:
масштабований x = ( вихідний x – x̄) / с
золото:
- оригінальне x : початкове значення x
- x̄ : вибірка середніх
- s : стандартне відхилення вибірки
Це також відомо як нормалізація даних, яка просто перетворює кожне вихідне значення на z-показник .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання за допомогою dplyr:
Як вибрати стовпці за назвою за допомогою dplyr
Як вибрати стовпці за індексом за допомогою dplyr
Як використовувати select_if із кількома умовами в dplyr