| ex_data_table {rqdatatable} | R Documentation |
Execute an rquery pipeline with data.table sources.
Description
data.tables are looked for by name in the tables argument and in the execution environment.
Main external execution interface.
Usage
ex_data_table(
optree,
...,
tables = list(),
source_usage = NULL,
source_limit = NULL,
env = parent.frame()
)
Arguments
optree |
relop operations tree. |
... |
not used, force later arguments to bind by name. |
tables |
named list map from table names used in nodes to data.tables and data.frames. |
source_usage |
list mapping source table names to vectors of columns used. |
source_limit |
if not null limit all table sources to no more than this many rows (used for debugging). |
env |
environment to work in. |
Details
-
ex_data_table_step.relop_drop_columns: implement drop columns -
ex_data_table_step.relop_extend: implement extend/assign operator -
ex_data_table_step.relop_natural_join: implement natural join -
ex_data_table_step.relop_non_sql: direct function (non-sql) operator (not implemented fordata.table) -
ex_data_table_step.relop_null_replace: implement NA/NULL replacement -
ex_data_table_step.relop_orderby: implement row ordering -
ex_data_table_step.relop_project: implement row ordering -
ex_data_table_step.relop_rename_columns: implement column renaming -
ex_data_table_step.relop_select_columns: implement select columns -
ex_data_table_step.relop_select_rows: implement select rows -
ex_data_table_step.relop_sql: direct sql operator (not implemented fordata.table) -
ex_data_table_step.relop_table_source: implement data source -
ex_data_table_step.relop_theta_join: implement theta join (not implemented fordata.table) -
ex_data_table_step.relop_unionall: implement row binding
Value
resulting data.table (intermediate tables can somtimes be mutated as is practice with data.table).
Examples
a <- data.table::data.table(x = c(1, 2) , y = c(20, 30), z = c(300, 400))
optree <- local_td(a) %.>%
select_columns(., c("x", "y")) %.>%
select_rows_nse(., x<2 & y<30)
cat(format(optree))
ex_data_table(optree)
# other ways to execute the pipeline include
data.frame(x = 0, y = 4, z = 400) %.>% optree