Como selecionar linhas únicas em um quadro de dados em r


Você pode usar os seguintes métodos para selecionar linhas únicas em um quadro de dados em R:

Método 1: selecionar linhas únicas em todas as colunas

 library (dplyr)

df %>% distinct()

Método 2: selecionar linhas únicas com base em uma coluna

 library (dplyr)

df %>% distinct(column1, . keep_all = TRUE )

Método 3: selecionar linhas únicas com base em várias colunas

 library (dplyr)

df %>% distinct(column1, column2, . keep_all = TRUE )

Este tutorial explica como usar cada método na prática com o seguinte quadro de dados:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 position=c('G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'),
                 points=c(10, 10, 8, 14, 15, 15, 17, 17))

#view data frame
df

  team position points
1 AG 10
2 AG 10
3AF 8
4 AF 14
5 BG 15
6 BG 15
7 BF 17
8 BF 17

Exemplo 1: Selecione linhas exclusivas em todas as colunas

O código a seguir mostra como selecionar linhas com valores exclusivos em todas as colunas do quadro de dados:

 library (dplyr)

#select rows with unique values across all columns
df %>% distinct()

  team position points
1 AG 10
2AF 8
3 AF 14
4 BG 15
5 BF 17

Podemos ver que existem cinco linhas exclusivas no quadro de dados.

Nota : Quando são encontradas linhas duplicadas, apenas a primeira linha exclusiva é retida.

Exemplo 2: Selecione linhas únicas com base em uma coluna

O código a seguir mostra como selecionar linhas únicas com base apenas na coluna da equipe .

 library (dplyr)

#select rows with unique values based on team column only
df %>% distinct(team, . keep_all = TRUE )

  team position points
1 AG 10
2 BG 15

Como existem apenas dois valores únicos na coluna Equipe , apenas as linhas com a primeira ocorrência de cada valor são mantidas.

Nota : O argumento .keep_all=TRUE diz a R para manter todas as outras colunas na saída.

Exemplo 3: Selecione linhas únicas com base em múltiplas colunas

O código a seguir mostra como selecionar linhas únicas com base apenas nas colunas de equipe e posição .

 library (dplyr)

#select rows with unique values based on team and position columns only
df %>% distinct(team, position, . keep_all = TRUE )

  team position points
1 AG 10
2AF 8
3 BG 15
4 BF 17

Quatro linhas são retornadas porque há quatro combinações exclusivas de valores nas colunas Equipe e Posição .

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:

Como filtrar valores únicos usando dplyr
Como filtrar por múltiplas condições usando dplyr
Como contar o número de ocorrências em colunas em R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *