首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >倾向评分加权中的卡方警告

倾向评分加权中的卡方警告
EN

Stack Overflow用户
提问于 2018-05-21 16:27:41
回答 1查看 218关注 0票数 1

我正在使用ps()包的倾向评分加权twang函数来平衡两组在许多方面不同的活跃劳动力市场计划参与者。其中一个不同之处在于,为了这个问题,我将教育水平重新划分为两个层次:一个是至少接受小学教育的人,另一个是接受过最多小学教育的人。

当我将此变量作为因子包括时:

代码语言:javascript
复制
 ALMP$Education_f2 = factor(ALMP$Education_f2, levels = c(„at.least.primary“, „at.most.primary“), ordered = TRUE)

R在迭代期间开始抱怨Chi-squared approximation may be incorrect

当我将教育变量包含为整数时

代码语言:javascript
复制
ALMP$Education_int = as.integer(ALMP$Education_int)

没有任何警告。

Griffin等人说这里twang包可以处理分类变量:

没有必要在公式中指定交互条件。也没有必要--而且可能适得其反--创建表示分类协变量的指示符或“虚拟编码”变量,前提是将分类变量存储为一个因子或按顺序存储(更多细节请参见帮助(因子))。

如果这是真的,那R为什么要抱怨呢?这是我该担心的吗?

我还读过这里,通常情况下,如果任何类别的观察结果少于5个,则奇方会抱怨。这不是我的情况,因为如果我在教育和课程类型上运行一个(2x2)交叉选项卡,一个分组的参与者的最低比例是2810 (占所有案例的8%)。

当然,我可以将教育变量保持为整数(0/1),但我提出这个问题是因为,如果可能的话,我想对这个变量进行细化,并将它包含在两个以上的层次(例如:没有教育、小学、中学、高等教育),在那里显然一个整数变量将不再起作用。

我在数据框架中总共有大约35000个观察,并且正在使用3.4.2。在Windows7Professional (x64)上的R (x64)版本。

这些数据来自带有一些保密规则的公共注册表数据库,因此遗憾的是,我无法共享它,但我很乐意更详细地描述任何有助于澄清情况的特性。

先谢谢你。

EN

回答 1

Stack Overflow用户

发布于 2018-06-01 11:48:55

我想我已经找到问题了。我正在使用R,这与我是用还是用R脚本编写代码有关。

只有当我将一个因子变量传递给R Markdown中的ps函数时,问题才会发生,如下所示:

代码语言:javascript
复制
library(twang)
data("lalonde") 

lalonde$college = ifelse(lalonde$educ<13, 0, 1)
lalonde$college_f = factor(lalonde$college, ordered = TRUE)

ps.lalonde_f = ps(treat ~ age + college_f + black + hispan + nodegree + married + re74 + re75,
                  data = lalonde, 
                  n.tree = 1000,
                  interaction.depth = 2, 
                  shrinkage = 0.01,
                  perm.test.iters = 0,
                  stop.method = c("es.mean", "ks.max"),
                  estimand = "ATT",
                  verbose = FALSE)

当我将college_f参数替换为ps()函数中的数字college时,就不再收到卡方警告。另外,如果我只是将上面的代码传递给一个R脚本,那么警告也不会出现。

(我使用的是版本1.1.442。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50452989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档