我一直在修改在 SQL 服务器上运行 R 命令,方法是调用一个过程,该过程使用 R lm() 函数对 SQL 数据库“my_schema.data”中的一些虚构数据点运行 OLS 回归,然后输出对象作为 SQL 数据库。
我的策略是首先创建一个名为“my_schema.ols_model_db”的空 SQL 数据库,然后将使用已转换为 data.frame 类的 ols_model 对象中的值填充该数据库。
我快到了,但不太清楚如何将 ols_model 对象转换为 R data.frame,也不知道列标题将是什么(我们需要提前知道以填充空SQL 数据库 my_schema.ols_model_db)。
哪个代码应该插入“???” 在下面的程序中?
my_schema.data
y x
1 5
2 9
3 17
4 26
CREATE COLUMN TABLE "my_schema"."my_schema.ols_model_db"(???);
CREATE PROCEDURE my_schema.proc_Rcode( IN train my_schema.data, OUT ols_model_db my_schema.ols_model_db )
LANGUAGE RLANG AS BEGIN
ols_model <- lm(y ~ x, data=train)
ols_model_db <- data.frame(g=I(lapply(ols_model, function(x) {serialize(x, NULL)})))
???
END
CALL my_schema.proc_Rcode( my_schema.data my_schema.ols_model_db )