Assign a table or an expression result to a R symbol in the Datashield R session.
Note that usage of usage of respectively datashield.assign.table
or
datashield.assign.expr
should be preferred for readability.
datashield.assign(
conns,
symbol,
value,
variables = NULL,
missings = FALSE,
identifiers = NULL,
id.name = NULL,
async = TRUE,
success = NULL,
error = NULL
)
DSConnection-class
object or a list of DSConnection-class
s.
Name of the R symbol.
Fully qualified name of a table reference in data repositories (see
datashield.assign.table
for more details) OR a R expression with allowed assign
functions calls (see datashield.assign.expr
for more details).
List of variable names or Javascript expression that selects the variables of a table (ignored if value does not refere to a table). See javascript documentation: http://opaldoc.obiba.org/en/latest/magma-user-guide/variable/
If TRUE, missing values will be pushed from data repository to R, default is FALSE. Ignored if value is an R expression.
Name of the identifiers mapping to use when assigning entities to R (if supported by data repository).
Name of the column that will contain the entity identifiers. If not specified, the identifiers will be the data frame row names. When specified this column can be used to perform joins between data frames.
Whether the result of the call should be retrieved asynchronously (TRUE means that calls are parallelized over the connections, when the connection supports that feature, with an extra overhead of requests).
Callback function that will be called each time an assignment is successful. The expected function signature is the connection/study name. Default is NULL (no callback).
Callback function that will be called each time the assignment request has failed. The expected function signature is the connection/study name and the error message. Default is NULL (no callback).
if (FALSE) {
# assign a list of variables from table CNSIM1
datashield.assign(conn, symbol="D", value="CNSIM.CNSIM1",
variables=list("GENDER","LAB_GLUC"))
# assign all the variables matching 'LAB' from table CNSIM1
datashield.assign(conn, symbol="D", value="CNSIM.CNSIM1",
variables="name().matches('LAB_')")
# do assignment with callback functions
datashield.assign(conns, "D",
list(server1="CNSIM.CNSIM1", server2="CNSIM.CNSIM2"),
success = function(server) {
# do something with server's success
},
error = function(server, error) {
# do something with server's error message
})
}