Como combinar linhas com os mesmos valores de coluna em r
Você pode usar a seguinte sintaxe básica para combinar linhas com os mesmos valores de coluna em um quadro de dados em R:
library (dplyr)
df %>%
group_by(group_var1, group_var2) %>%
summarise(across(c(values_var1, values_var2), sum))
O exemplo a seguir mostra como usar essa sintaxe na prática.
Exemplo: Combine linhas com os mesmos valores de coluna em R
Suponha que temos o seguinte quadro de dados contendo informações sobre vendas e devoluções feitas por diversos funcionários de uma empresa:
#create data frame df <- data. frame (id=c(101, 101, 102, 103, 103, 103), employee=c('Dan', 'Dan', 'Rick', 'Ken', 'Ken', 'Ken'), sales=c(4, 1, 3, 2, 5, 3), returns=c(1, 2, 2, 1, 3, 2)) #view data frame df id employee sales returns 1 101 Dan 4 1 2 101 Dan 1 2 3 102 Rick 3 2 4 103 Ken 2 1 5 103 Ken 5 3 6 103 Ken 3 2
Podemos usar a seguinte sintaxe para combinar linhas que possuem o mesmo valor nas colunas id e Employee e, em seguida, agregar as colunas restantes:
library (dplyr) #combine rows with same value for id and employee and aggregate remaining columns df %>% group_by(id, employee) %>% summarise(across(c(sales, returns), sum)) # A tibble: 3 x 4 #Groups: id[3] id employee sales returns 1 101 Dan 5 3 2 102 Rick 3 2 3 103 Ken 10 6
O resultado é um quadro de dados que combina todas as linhas do quadro de dados original que tinham o mesmo valor nas colunas ID e Funcionário e, em seguida, calcula a soma dos valores nas colunas Vendas e Devoluções .
Nota : Optamos por agregar as colunas de vendas e devoluções usando a função soma , mas você pode agregar por outra métrica, como média, se desejar.
Relacionado: Como usar a função across() em dplyr
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:
Como combinar listas em R
Como combinar dois vetores em R
Como combinar dois quadros de dados em R com colunas diferentes