首页 > 解决方案 > 将值传递给 Zelig

问题描述

我想编写一个涉及向 Zelig 提供参数值的函数。但是,在我这样做之前,我需要弄清楚如何将值传递给 Zelig,即使没有函数。这是我想要的结果:

library(Zelig)
data(turnout)

zelig(vote ~ race + educate, model = 'logit', data = turnout, cite =F) %>%
  setx(race = "others", educate = 9) 

请注意race已成功设置为“其他”并educate已正确设置为 9 的输出。但是,如果我尝试提供带有这些参数的命名向量,它将不起作用:

parameters <- c(race = "others", educate = 9)

zelig(vote ~ race + educate, model = 'logit', data = turnout, cite =F) %>%
  setx(parameters)

输出显示raceeducate保持默认值(可能是原始数据集中这些变量的模式和均值)。我也尝试过提供命名列表。我该如何克服呢?

此外,我似乎根本无法修改这个data论点。文档说我应该能够通过单独命名参数(使用...参数)或通过提供一个新的 data.frame 来进行平均(使用data参数)来设置参数。这里也没有运气:

turnout_2 <- turnout[turnout$educated <12,]

zelig(vote ~ race + educate, model = 'logit', data = turnout, cite =F) %>%
  setx(data = turnout_2)

我正在使用 R 3.6.3、Zelig 版本 5.1.7、macOS Mohave 10.14.5。谢谢!

标签: rsimulationr-zelig

解决方案


推荐阅读