Як масштабувати лише числові стовпці в 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
  • : вибірка середніх
  • s : стандартне відхилення вибірки

Це також відомо як нормалізація даних, яка просто перетворює кожне вихідне значення на z-показник .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання за допомогою dplyr:

Як вибрати стовпці за назвою за допомогою dplyr
Як вибрати стовпці за індексом за допомогою dplyr
Як використовувати select_if із кількома умовами в dplyr

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

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