Como comparar três colunas em r (com exemplo)
Você pode usar a seguinte sintaxe básica para comparar os valores de três colunas em R:
df$all_matching <- df$A == df$B & df$B == df$C
Esta sintaxe cria uma nova coluna chamada all_matching que retorna TRUE se todas as colunas tiverem valores correspondentes, caso contrário retorna FALSE .
O exemplo a seguir mostra como usar essa sintaxe na prática.
Exemplo: compare três colunas em R
Suponha que temos o seguinte quadro de dados em R com três colunas:
#create data frame df <- data. frame (A=c(4, 0, 3, 3, 6, 8, 7, 9, 12), B=c(4, 2, 3, 5, 6, 4, 7, 7, 12), C=c(4, 0, 3, 5, 5, 10, 7, 9, 12)) #view data frame df ABC 1 4 4 4 2 0 2 0 3 3 3 3 4 3 5 5 5 6 6 5 6 8 4 10 7 7 7 7 8 9 7 9 9 12 12 12
Podemos usar o código a seguir para criar uma nova coluna chamada all_matching que retorna TRUE se todas as três colunas corresponderem em uma determinada linha e FALSE se não corresponderem:
#create new column that checks if values in all three columns match df$all_matching <- df$A == df$B & df$B == df$C #view updated data frame df ABC all_matching 1 4 4 4 TRUE 2 0 2 0 FALSE 3 3 3 3 TRUE 4 3 5 5 FALSE 5 6 6 5 FALSE 6 8 4 10 FALSE 7 7 7 7 TRUE 8 9 7 9 FALSE 9 12 12 12 TRUE
A nova coluna chamada all_matching indica se os valores nas três colunas correspondem ou não em uma determinada linha.
Por exemplo:
- Todos os três valores correspondem na primeira linha, então TRUE é retornado.
- Nem todos os valores correspondem na segunda linha, então FALSE é retornado.
- Todos os três valores correspondem na terceira linha, então TRUE é retornado.
E assim por diante.
Se quiser retornar valores diferentes de TRUE e FALSE , você pode especificar esses valores em uma função ifelse() .
Por exemplo, podemos usar o seguinte código para retornar “Sim” se os valores em todas as três colunas corresponderem ou “Não” caso contrário:
#create new column that checks if values in all three columns match df$all_matching <- ifelse(df$A == df$B & df$B == df$C, ' Yes ', ' No ') #view updated data frame df ABC all_matching 1 4 4 4 Yes 2 0 2 0 No 3 3 3 3 Yes 4 3 5 5 No 5 6 6 5 No 6 8 4 10 No 7 7 7 7 Yes 8 9 7 9 No 9 12 12 12 Yes
A nova coluna agora retorna “Sim” ou “Não” em vez de TRUE ou FALSE .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:
Como verificar se existe uma coluna no quadro de dados em R
Como verificar se a coluna contém uma string em R
Como adicionar coluna ao quadro de dados em R com base em outras colunas