DT[where, select|update|do, by]
syntax is used to work with columns of a data.table.
i
argumentj
argumentThese two arguments are usually passed by position instead of by name.
A sequence of steps can be chained like DT[...][...]
.
DT[...]
Function or symbol | Notes |
---|---|
.() | in several arguments, replaces list() |
J() | in i , replaces list() |
:= | in j , a function used to add or modify columns |
.N | in i , the total number of rows in j , the number of rows in a group |
.I | in j , the vector of row numbers in the table (filtered by i ) |
.SD | in j , the current subset of the data selected by the .SDcols argument |
.GRP | in j , the current index of the subset of the data |
.BY | in j , the list of by values for the current subset of data |
V1, V2, ... | default names for unnamed columns created in j |
DT[...]
Notation | Notes |
---|---|
DT1[DT2, on, j] | join two tables |
i.* | special prefix on DT2's columns after the join |
by=.EACHI | special option available only with a join |
DT1[!DT2, on, j] | anti-join two tables |
DT1[DT2, on, roll, j] | join two tables, rolling on the last column in on= |
Notation | Notes |
---|---|
melt(DT, id.vars, measure.vars) | transform to long format for multiple columns, use measure.vars = patterns(...) |
dcast(DT, formula) | transform to wide format |
rbind(DT1, DT2, ...) | stack enumerated data.tables |
rbindlist(DT_list, idcol) | stack a list of data.tables |
split(DT, by) | split a data.table into a list |
Function(s) | Notes |
---|---|
foverlaps | overlap joins |
merge | another way of joining two tables |
set | another way of adding or modifying columns |
fintersect , fsetdiff , funion , fsetequal , unique , duplicated , anyDuplicated | set-theory operations with rows as elements |
CJ | the Cartesian product of vectors |
uniqueN | the number of distinct rows |
rowidv(DT, cols) | row ID (1 to .N) within each group determined by cols |
rleidv(DT, cols) | group ID (1 to .GRP) within each group determined by runs of cols |
shift(DT, n) | apply a shift operator to every column |
setorder , setcolorder , setnames , setkey , setindex , setattr | modify attributes and order by reference |
Features | Notes |
---|---|
IDate and ITime | integer dates and times |