gpt4 book ai didi

r - 将文本粘贴为 biglm 的公式

转载 作者:行者123 更新时间:2023-12-04 04:46:34 24 4
gpt4 key购买 nike

我尝试在大型数据集上运行多个线性回归。基本上 biglm 工作正常。现在我尝试找到一种方便的方法来自动创建我的公式,使用一个向量,包含我的因变量和一个字符串,包含我的公式的其余部分。两个字符串一起是我的公式。
这适用于 lm() 但使用 biglm() 会导致错误

可复制的例子:

library(biglm)

data<-data.frame(av=c(1,2,3,4,5,6,5,4,5,5),
uv1=c(1,2,5,5,4,56,3,4,5,6),
uv2=c(4,5,8,3,2,7,6,2,4,6),
weight=c(1.2,1,1,1,1,1,1,1,0,0))

dependent<-c('av')

independent<-'~ uv1 + uv2 -1'

formula<-paste(dependent[1],independent)

#this works fine
lm_standard<-lm(formula,data=data,weights=weight)

#and this works fine
lm_big1<-biglm(av~uv1+uv2-1,data=data,weights=~weight)

#and here comes the error
lm_big<-biglm(formula,data=data,weights=~weight)

错误:$ 运算符对原子向量无效

我不使用 as.formula(),因为我不知道如何将 -1 添加到 as.formula() 对象。我对 as.formula() 问题的解决方法导致了错误消息。是否有可能 a) 使用 as.formula() 缺少截距或 b) 以一种 biglm() 可以理解的方式粘贴公式?

最佳答案

lm自动将合适的对象强制转换为 formula对象,同时 biglm没有。自己做就行了....

lm_big<-biglm( as.formula( formula ) ,data=data,weights=~weight)

关于r - 将文本粘贴为 biglm 的公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18082791/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com