为什么stargazer会为这两个模型生成不同的因变量标签?
我想知道是否有人能告诉我为什么stargazer为以下两种型号生产不同的因变量标签:为什么stargazer会为这两个模型生成不同的因变量标签?,r,stargazer,R,Stargazer,我想知道是否有人能告诉我为什么stargazer为以下两种型号生产不同的因变量标签: j <- "hp" i <- "cyl" lm1 <- lm(paste(j, "~", i), mtcars) stargazer(lm1, header = FALSE, type = "text") j似乎stargazer从模型的call属性中选择因变量标签,因此当执行内部代码()的第51行时,它将读取j,而不是hp 您可以看到,如果您将调用atribute从lm2复制到lm1,现
j <- "hp"
i <- "cyl"
lm1 <- lm(paste(j, "~", i), mtcars)
stargazer(lm1, header = FALSE, type = "text")
j似乎stargazer
从模型的call
属性中选择因变量标签,因此当执行内部代码()的第51行时,它将读取j
,而不是hp
您可以看到,如果您将调用
atribute从lm2复制到lm1,现在您可以得到它:
lm1$call <- lm2$call
stargazer(lm1, header = FALSE, type = "text")
lm1$call我怀疑这与非标准评估有关。即使您尝试as.formula(粘贴(j,~”,i))
在变量调用中,您会得到j
。为此,我最喜欢的函数是重新格式化
:重新格式化(i,response=j)
将为您构造公式。
lm1$call <- lm2$call
stargazer(lm1, header = FALSE, type = "text")