Cálculos por grupos

Manipulação de dados com data.table em R

Matt Dowle, Arun Srinivasan

Instructors, DataCamp

O argumento by

O argumento by permite calcular para cada valor único das colunas (de agrupamento) indicadas em by

# Quantas viagens ocorreram a partir de cada start_station?
ans <- batrips[, .N, by = "start_station"]
head(ans, 3)
          start_station        N
San Francisco City Hall     2145
 Embarcadero at Sansome    12879
      Steuart at Market    11579
Manipulação de dados com data.table em R

O argumento by

O argumento by aceita tanto vetor character com nomes de colunas quanto uma list de variáveis/expressões

# Igual a batrips[, .N, by = "start_station"]
ans <- batrips[, .N, by = .(start_station)]
head(ans, 3)
          start_station        N
San Francisco City Hall     2145
 Embarcadero at Sansome    12879
      Steuart at Market    11579
Manipulação de dados com data.table em R

O argumento by

Permite renomear colunas de agrupamento na hora

ans <- batrips[, .(no_trips = .N), by = .(start = start_station)]
head(ans, 3)
                  start   no_trips
San Francisco City Hall       2145
 Embarcadero at Sansome      12879
      Steuart at Market      11579
Manipulação de dados com data.table em R

Expressões em by

A expressão list() ou .() em by permite calcular variáveis de agrupamento na hora

# Obter o número de viagens por start_station em cada mês
ans <- batrips[ , .N, by = .(start_station, mon = month(start_date))]
head(ans, 3)
          start_station mon    N
San Francisco City Hall   1  193
 Embarcadero at Sansome   1  985
      Steuart at Market   1  813
Manipulação de dados com data.table em R

Vamos praticar!

Manipulação de dados com data.table em R

Preparing Video For Download...