Wraps a DataBackend around data.

# S3 method for data.frame
as_data_backend(data, primary_key = NULL, keep_rownames = FALSE, ...)

# S3 method for Matrix
as_data_backend(data, primary_key = NULL, dense = NULL, ...)

as_data_backend(data, primary_key = NULL, ...)

Arguments

data

any
Data to create a DataBackend from. For a data.frame() (this includes tibble() from tibble and data.table::data.table()), a DataBackendDataTable is created. See methods("as_data_backend") for possible input formats.

Package mlr3db extends this function with a method for lazy table objects implemented in dbplyr. This allows to interface many different data base systems such as SQL servers.

primary_key

(character(1) | integer())
Name of the primary key column, or integer vector of row ids.

keep_rownames

(logical(1) | character(1))
If TRUE or a single string, keeps the row names of data as a new column. The column is named like the provided string, defaulting to "..rownames" for keep_rownames == TRUE. Note that the created column will be used as a regular feature by the task unless you manually change the column role. Also see data.table::as.data.table().

...

(any)
Additional arguments passed to the respective DataBackend method.

dense

(data.frame()). Dense data.

Value

DataBackend.

See also

Examples

# create a new backend using the iris data: as_data_backend(iris)
#> <DataBackendDataTable> (150x6) #> Sepal.Length Sepal.Width Petal.Length Petal.Width Species ..row_id #> 5.1 3.5 1.4 0.2 setosa 1 #> 4.9 3.0 1.4 0.2 setosa 2 #> 4.7 3.2 1.3 0.2 setosa 3 #> 4.6 3.1 1.5 0.2 setosa 4 #> 5.0 3.6 1.4 0.2 setosa 5 #> 5.4 3.9 1.7 0.4 setosa 6 #> [...] (144 rows omitted)