Mude variáveis em tabelas de banco de dados diretamente usando dplyr
Aqui estão os dados do mtcars no arquivo de banco de dados MonetDBLite.
library(MonetDBLite)
library(tidyverse)
library(DBI)
dbdir <- getwd()
con <- dbConnect(MonetDBLite::MonetDBLite(), dbdir)
dbWriteTable(conn = con, name = "mtcars_1", value = mtcars)
data_mt <- con %>% tbl("mtcars_1")
Eu quero usar o dplyr mutate para criar novas variáveis e adicionar (confirmar!) Isso à tabela do banco de dados? Algo como
data_mt %>% select(mpg, cyl) %>% mutate(var = mpg/cyl) %>% dbCommit(con)
A saída desejada deve ser a mesma quando fazemos:
dbSendQuery(con, "ALTER TABLE mtcars_1 ADD COLUMN var DOUBLE PRECISION")
dbSendQuery(con, "UPDATE mtcars_1 SET var=mpg/cyl")
Como pode fazer isso?