Como usar a função ntile() em dplyr (com exemplos)
Você pode usar a função ntile() do pacote dplyr em R para dividir um vetor de entrada em n compartimentos.
Esta função usa a seguinte sintaxe básica:
ntile(x, n)
Ouro:
- x : vetor de entrada
- n : Número de compartimentos
Nota : Os tamanhos dos baldes podem diferir em até um.
Os exemplos a seguir mostram como usar esta função na prática.
Exemplo 1: Use ntile() com um vetor
O código a seguir mostra como usar a função ntile() para dividir um vetor de 11 elementos em 5 intervalos diferentes:
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
Pelo resultado, podemos ver que cada elemento do vetor original foi colocado em um dos cinco baldes.
Os menores valores são atribuídos ao intervalo 1, enquanto os valores maiores são atribuídos ao intervalo 5.
Por exemplo:
- Os menores valores de 1, 3 e 4 são atribuídos ao intervalo 1 .
- Os maiores valores, 22 e 23, são atribuídos ao intervalo 5 .
Exemplo 2: Usando ntile() com um quadro de dados
Suponha que temos o seguinte quadro de dados em R que mostra os pontos marcados por diferentes jogadores de basquete:
#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
O código a seguir mostra como usar a função ntile() para criar uma nova coluna no quadro de dados que atribui cada jogador a um dos três baldes, com base nos pontos marcados:
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
A nova coluna do balde atribui um valor entre 1 e 3 a cada jogador.
Os jogadores com os pontos mais baixos recebem o valor 1 e os jogadores com os pontos mais altos recebem o valor 3 .
Recursos adicionais
Os tutoriais a seguir explicam como usar outras funções comuns em R:
Como usar a função across() no dplyr
Como usar a função relocate() no dplyr
Como usar a função slice() no dplyr