Jak korzystać z funkcji ntile() w dplyr (z przykładami)


Możesz użyć funkcji ntile() z pakietu dplyr w R, aby podzielić wektor wejściowy na n przedziałów.

Ta funkcja wykorzystuje następującą podstawową składnię:

ntile(x, n)

Złoto:

  • x : wektor wejściowy
  • n : Liczba przegródek

Uwaga : rozmiary łyżek mogą różnić się maksymalnie o jeden.

Poniższe przykłady pokazują, jak w praktyce wykorzystać tę funkcję.

Przykład 1: Użyj ntile() z wektorem

Poniższy kod pokazuje, jak użyć funkcji ntile() do podzielenia wektora składającego się z 11 elementów na 5 różnych segmentów:

 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

Z wyniku widzimy, że każdy element pierwotnego wektora został umieszczony w jednym z pięciu segmentów.

Najmniejsze wartości są przypisane do koszyka 1, natomiast największe wartości są przypisane do koszyka 5.

Na przykład:

  • Najmniejsze wartości 1, 3 i 4 przypisane są do segmentu 1 .
  • Największe wartości 22 i 23 przypisane są do koszyka 5 .

Przykład 2: Użycie ntile() z ramką danych

Załóżmy, że mamy następującą ramkę danych w R, która pokazuje punkty zdobyte przez różnych koszykarzy:

 #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

Poniższy kod pokazuje, jak użyć funkcji ntile() do utworzenia nowej kolumny w ramce danych, która przypisuje każdego gracza do jednego z trzech segmentów na podstawie zdobytych punktów:

 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

Nowa kolumna wiadra przypisuje każdemu graczowi wartość od 1 do 3.

Gracze z najniższą liczbą punktów otrzymują wartość 1 , a gracze z największą liczbą punktów otrzymują wartość 3 .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak korzystać z innych typowych funkcji w R:

Jak używać funkcjicross() w dplyr
Jak korzystać z funkcji relocate() w dplyr
Jak korzystać z funkcji plasterka() w dplyr

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *