Como realizar a operação de agregação com Groupby Max

Como realizar a operação de agregação com Groupby Max
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

  1. O primeiro parâmetro leva a coluna variável (agrupada) que retornará os valores máximos por grupo.
  2. O segundo parâmetro leva uma coluna única ou múltipla (agrupamento) em uma lista de que os valores são agrupados nessas colunas.
  3. 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:

  1. group_by () leva um parâmetro, eu.e. coluna de agrupamento
  2. Summarise_at () leva dois parâmetros:
  1. O primeiro parâmetro leva a coluna variável (agrupada) que retorna os valores máximos por grupo.
  2. 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.