Вычисления по группам

Работа с данными с помощью data.table в R

Matt Dowle, Arun Srinivasan

Instructors, DataCamp

Аргумент by

Аргумент by позволяет выполнять вычисления для каждого уникального значения столбцов группировки, указанных в by

# How many trips happened from each 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
Работа с данными с помощью data.table в R

Аргумент by

Аргумент by принимает как вектор character с именами столбцов, так и list переменных/выражений

# Same as 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
Работа с данными с помощью data.table в R

Аргумент by

Позволяет переименовывать столбцы группировки «на лету»

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
Работа с данными с помощью data.table в R

Выражения в by

Выражение list() или .() в by позволяет вычислять переменные группировки «на лету»

# Get number of trips for each start_station for each month
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
Работа с данными с помощью data.table в R

Давайте потренируемся!

Работа с данными с помощью data.table в R

Preparing Video For Download...