Як використовувати функцію ntile() у dplyr (з прикладами)
Ви можете використовувати функцію ntile() з пакету dplyr у R, щоб розділити вхідний вектор на n бункерів.
Ця функція використовує такий базовий синтаксис:
ntile(x, n)
золото:
- x : вхідний вектор
- n : кількість відділень
Примітка : розміри ковшів можуть відрізнятися на одиницю.
Наступні приклади показують, як використовувати цю функцію на практиці.
Приклад 1: використовуйте ntile() із вектором
У наведеному нижче коді показано, як за допомогою функції ntile() розділити вектор з 11 елементів на 5 різних сегментів:
library (dplyr) #createvector x <- c(1, 3, 4, 6, 7, 8, 10, 13, 19, 22, 23) #break up vector into 5 buckets ntile(x, 5) [1] 1 1 1 2 2 3 3 4 4 5 5
З результату ми бачимо, що кожен елемент вихідного вектора було поміщено в одне з п’яти відер.
Найменші значення призначаються сегменту 1, тоді як найбільші значення призначаються сегменту 5.
Наприклад:
- Найменші значення 1, 3 і 4 призначаються для відра 1 .
- Найбільші значення, 22 і 23, призначаються сегменту 5 .
Приклад 2: Використання ntile() із фреймом даних
Припустимо, що ми маємо наступний кадр даних у R, який показує очки, набрані різними баскетболістами:
#create data frame df <- data. frame (player=LETTERS[1:9], points=c(12, 19, 7, 22, 24, 28, 30, 19, 15)) #view data frame df player points 1 to 12 2 B 19 3 C 7 4 D 22 5 E 24 6 F 28 7 G 30 8:19 a.m. 9 I 15
Наступний код показує, як використовувати функцію ntile() для створення нового стовпця у фреймі даних, який призначає кожному гравцеві одну з трьох груп на основі набраних очок:
library (dplyr) #create new column that assigns players into buckets based on points df$bucket <- ntile(df$points, 3) #view updated data frame df player points bucket 1 to 12 1 2 B 19 2 3 C 7 1 4 D 22 2 5 E 24 3 6 F 28 3 7 G 30 3 8:19 2 9 I 15 1
У новому стовпці відра кожному гравцеві призначається значення від 1 до 3.
Гравці з найменшою кількістю балів отримують значення 1 , а гравці з найбільшою кількістю балів отримують значення 3 .
Додаткові ресурси
У наступних посібниках пояснюється, як використовувати інші поширені функції в R:
Як використовувати функцію cross() у dplyr
Як використовувати функцію relocate() у dplyr
Як використовувати функцію slice() у dplyr