Como usar a função cut() em r
A função cut() em R pode ser usada para cortar um intervalo de valores em compartimentos e especificar rótulos para cada compartimento.
Esta função usa a seguinte sintaxe:
cortar(x, quebras, rótulos = NULL,…)
Ouro:
- x : nome do vetor
- breaks : Número de quebras a serem feitas ou vetor de pontos de quebra
- rótulos : rótulos para as caixas resultantes
Os exemplos a seguir mostram como usar esta função em diferentes cenários com o seguinte quadro de dados em R:
#create data frame
df <- data. frame (player=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'),
points=c(4, 7, 8, 12, 14, 16, 20, 26, 36))
#view data frame
df
player points
1 to 4
2 B 7
3 C 8
4 D 12
5 E 14
6 F 16
7 G 20
8:26 a.m.
9 I 36
Exemplo 1: Corte o vetor com base no número de quebras
O código a seguir mostra como usar a função cut() para criar uma nova coluna chamada categoria que corta a coluna de pontos em grupos de quatro tamanhos iguais:
#create new column that places each player into four categories based on points
df$category <- cut(df$points, breaks= 4 )
#view updated data frame
df
player points category
1 to 4 (3.97.12]
2 B 7 (3.97.12]
3 C 8 (3.97.12]
4 D 12 (3.97.12]
5 E 14 (12.20]
6 F 16 (12.20]
7 G 20 (12.20]
8:26 a.m. (20.28]
9 I 36 (28.36]
Como especificamos breaks=4 , a função cut() divide os valores na coluna de pontos em grupos de quatro tamanhos iguais.
Veja como a função cut() fez isso:
- Primeiro, ele encontrou a diferença entre o maior e o menor valor na coluna de pontos (36 – 4 = 32).
- Então ele divide essa diferença por 4 (32/4 = 8)
- O resultado são quatro caixas com largura de 8 cada.
Nota : O intervalo mais baixo é 3,97 em vez de 4 devido à seguinte funcionalidade da documentação cut() :
Quando as pausas são especificadas como um único número, o intervalo dos dados é dividido em blocos de pausas de igual comprimento e, em seguida, os limites externos são movidos 0,1% para longe do intervalo para garantir que os valores discrepantes caiam dentro de ambos nos intervalos de pausa.
Exemplo 2: Vetor de corte com base em pontos de interrupção específicos
O código a seguir mostra como usar a função cut() para criar uma nova coluna chamada categoria que corta a coluna de pontos com base em um vetor de pontos de interrupção específicos:
#create new column based on specific break points
df$category <- cut(df$points, breaks=c(0, 10, 15, 20, 40))
#view updated data frame
df
player points category
1 to 4 (0.10]
2 B 7 (0.10]
3 C 8 (0.10]
4 D 12 (10.15]
5 E 14 (10.15]
6 F 16 (15.20]
7 G 20 (15.20]
8:26 a.m. (20.40)
9 I 36 (20.40]
A função cut() classificou cada jogador em categorias com base no vetor específico de pontos de interrupção que fornecemos.
Exemplo 3: Corte um vetor usando pontos de interrupção e rótulos específicos
O código a seguir mostra como usar a função cut() para criar uma nova coluna chamada categoria que corta a coluna de pontos com base em um vetor de pontos de interrupção específicos com rótulos personalizados:
#create new column based on values in points column
df$category <- cut(df$points,
breaks=c(0, 10, 15, 20, 40),
labels=c(' Bad ', ' OK ', ' Good ', ' Great '))
#view updated data frame
df
player points category
1 A 4 Bad
2 B 7 Bad
3 C 8 Bad
4 D 12 OK
5 E 14 OK
6 F 16 Good
7 G 20 Good
8:26 A.M. Great
9 I 36 Great
A nova coluna de categoria classifica cada jogador como Ruim, OK, Bom ou Excelente com base no valor correspondente na coluna de pontos .
Nota : O número de rótulos deve ser sempre um a menos que o número de pontos de interrupção para evitar o seguinte erro:
Error in cut.default(df$points, breaks = c(0, 10, 15, 20, 40), labels = c("Bad",:
lengths of 'breaks' and 'labels' differ
Recursos adicionais
Os tutoriais a seguir explicam como usar outras funções comuns em R:
Como usar a função tabulate() em R
Como usar a função split() em R
Como usar a função match() em R
Como usar a função replicate() em R