Neste r tutorial, veremos como executar operações de agregação agrupando os dados e retornando os valores máximos nas linhas agrupadas.
Esta operação deve ser realizada em um dataframe. Vamos criar o quadro de dados com sete linhas e cinco colunas.
#Crie um mercado de dados que possui 7 linhas e 5 colunas.
Mercado = dados.quadro (market_id = c (1,2,1,4,3,4,5), market_name = c ('m1', 'm2', 'm3',
'M4', 'm3', 'm4', 'm3'), market_place = c ('Índia', 'EUA', 'Índia', 'Austrália', 'EUA',
'Índia', 'Austrália'), Market_type = C ('Grocery', 'Bar', 'Grocery', 'Restaurent',
'Grocery', 'Bar', 'Grocery'), Market_squarefeet = C (120.342.220.110.342.220,110))
#Display O mercado de dados do mercado
Resultado
Agora, retornaremos os valores máximos em uma coluna agrupando os valores semelhantes em outra coluna.
Método 1: agregado ()
Aqui, usamos a função agregate () que leva os três parâmetros.
Sintaxe
agregado (dataframe_object $ agrupado, list (dataframe_object $ agrupamento), diversão = max)
Parâmetros
- O primeiro parâmetro leva a coluna variável (agrupada) que retornará os valores máximos por grupo.
- O segundo parâmetro leva uma coluna única ou múltipla (agrupamento) em uma lista de que os valores são agrupados nessas colunas.
- O terceiro parâmetro se diverte, o que levará a função máxima para retornar os valores máximos nos valores agrupados.
Exemplo 1
Neste exemplo, agrupamos os valores na coluna Market_place e obtemos os valores máximos na coluna Market_squarefeet agrupados pela coluna Market_place_place.
#Crie um mercado de dados que possui 7 linhas e 5 colunas.
Mercado = dados.quadro (market_id = c (1,2,1,4,3,4,5), market_name = c ('m1', 'm2', 'm3',
'M4', 'm3', 'm4', 'm3'), market_place = c ('Índia', 'EUA', 'Índia', 'Austrália', 'EUA',
'Índia', 'Austrália'), Market_type = C ('Grocery', 'Bar', 'Grocery', 'Restaurent',
'Grocery', 'Bar', 'Grocery'), Market_squarefeet = C (120.342.220.110.342.220,110))
#Obtenha o máximo de metros quadrados em grupo agrupando Market_place
Print (agregado (mercado $ market_squarefeet, list (mercado $ market_place), diversão = max))
Resultado
Podemos ver que os valores semelhantes (Austrália, Índia e EUA) na coluna Market_place estão agrupados e retornam o máximo de valores agrupados na coluna Market_square Feet.
Exemplo 2
Neste exemplo, agrupamos os valores na coluna Market_type e obtemos os valores máximos na coluna Market_squarefeet agrupados pela coluna Market_type.
#Crie um mercado de dados que possui 7 linhas e 5 colunas.
Mercado = dados.quadro (market_id = c (1,2,1,4,3,4,5), market_name = c ('m1', 'm2', 'm3',
'M4', 'm3', 'm4', 'm3'), market_place = c ('Índia', 'EUA', 'Índia', 'Austrália', 'EUA',
'Índia', 'Austrália'), Market_type = C ('Grocery', 'Bar', 'Grocery', 'Restaurent',
'Grocery', 'Bar', 'Grocery'), Market_squarefeet = C (120.342.220.110.342.220,110))
#Obtenha o máximo de metros quadrados em grupo agrupando Market_type
Print (agregado (mercado $ market_squarefeet, list (mercado $ market_type), diversão = max)))
Resultado
Podemos ver que os valores semelhantes (bar, supermercado e restaurante) na coluna Market_type são agrupados e retornam o máximo de valores agrupados na coluna Market_square Feet.
Exemplo 3
Neste exemplo, agrupamos os valores nas colunas Market_type e Market_place e obtemos os valores máximos na coluna Market_squarefeet agrupados pelas colunas Market_Type e Market_Place.
#Crie um mercado de dados que possui 7 linhas e 5 colunas.
Mercado = dados.quadro (market_id = c (1,2,1,4,3,4,5), market_name = c ('m1', 'm2', 'm3',
'M4', 'm3', 'm4', 'm3'), market_place = c ('Índia', 'EUA', 'Índia', 'Austrália', 'EUA',
'Índia', 'Austrália'), Market_type = C ('Grocery', 'Bar', 'Grocery', 'Restaurent',
'Grocery', 'Bar', 'Grocery'), Market_squarefeet = C (120.342.220.110.342.220,110))
#Obtenha o máximo de metros quadrados em grupo agrupando Market_place e Market_type
Print (agregado (mercado $ market_squarefeet, list (mercado $ market_place, market $ market_type), diversão = max))
Resultado
Podemos ver que os valores semelhantes de duas colunas foram agrupados e retornar os valores máximos em cada valor agrupado na coluna Market_square Feet.
Método 2: DPLYR
Aqui, usamos o grupo_by com summarise_at () que estão disponíveis na biblioteca DPLYR para executar o grupo_by com operação máxima.
Sintaxe
dataframe_object%>% group_by (agrupamento)%>% summarise_at (vars (agrupado), list (name = max))
Onde:
- group_by () leva um parâmetro, eu.e. coluna de agrupamento
- Summarise_at () leva dois parâmetros:
- O primeiro parâmetro leva a coluna variável (agrupada) que retorna os valores máximos por grupo.
- O segundo parâmetro leva a função máxima através da lista.
Finalmente, resumimos primeiro com Max e carregamos em grupo. Em seguida, carregamos a coluna agrupada no objeto DataFrame.
Retorna um Tibble.
Exemplo 1
Neste exemplo, agrupamos os valores na coluna Market_place e obtemos os valores máximos na coluna Market_squarefeet agrupados pela coluna Market_place_place.
Biblioteca ("DPLYR")
#Obtenha o máximo de metros quadrados em grupo agrupando Market_place
Print (mercado %> %group_by (market_place) %> %
Summarise_at (vars (market_squarefeet), list (nome = max))))
Resultado
Podemos ver que os valores semelhantes (Austrália, Índia e EUA) na coluna Market_place estão agrupados e retornam o máximo de cada valor agrupado na coluna Market_square Feet.
Exemplo 2
Neste exemplo, agrupamos os valores na coluna Market_type e obtemos os valores máximos na coluna Market_squareFeet agrupados pela coluna Market_type.
Biblioteca ("DPLYR")
#Obtenha o máximo de metros quadrados em grupo agrupando Market_type
impressão (mercado %> %group_by (market_type) %> %
Summarise_at (vars (market_squarefeet), list (nome = max))))
Resultado
Podemos ver que os valores semelhantes (bar, supermercado e restaurante) na coluna Market_type são agrupados e retornam os valores máximos em cada valor agrupado na coluna Market_square Feet.
Conclusão
É possível agrupar as colunas únicas ou múltiplas com outras colunas numéricas para retornar o valor máximo da coluna numérica usando a função agregate (). Da mesma forma, podemos usar a função groupby () com a função Summarise_AT () para agrupar os valores semelhantes em uma coluna e retornar os valores máximos dos valores agrupados em relação a outra coluna.