if (requireNamespace("DBI", quietly = TRUE) &&
requireNamespace("RSQLite", quietly = TRUE)) {
my_db <- DBI::dbConnect(RSQLite::SQLite(), ":memory:")
d <- data.frame(AUC = 0.6, R2 = 0.2)
source <- rq_copy_to(my_db, 'd',
d,
overwrite = TRUE,
temporary = TRUE)
linear_transform <- matrix(c(1 ,1, 2, -1, 1, 0, 0, 0), nrow = 2)
rownames(linear_transform) <- c("AUC", "R2")
colnames(linear_transform) <- c("res1", "res2", "res3", "res4")
offset <- c(5, 7, 1, 0)
names(offset) <- colnames(linear_transform)
optree <- affine_transform(source, linear_transform, offset)
cat(format(optree))
sql <- to_sql(optree, my_db)
cat(sql)
print(DBI::dbGetQuery(my_db, sql))
print(as.matrix(d) %*% linear_transform + offset)
DBI::dbDisconnect(my_db)
}
Run the code above in your browser using DataLab