潜在类别分析减少了观察次数?

时间:2018-08-13 16:33:32

标签: r

我正在尝试对大型民意调查进行潜伏类分析,但是我遇到了一个问题,即潜伏类结束时的观察数量少于最初的观察数量数据。这使我无法进行分析,因为我想将类特征变量附加到原始数据集中并运行一些统计数据/制作图表。

下面是一小段代码,ur是我要在其上运行LCA的数据集。 问题在于,当我创建ur时,会得到1948 obs的数据集,而在隐性类之后,我会返回1943 obs的集合。

  

ur <-dat [complete.cases(dat [,91:104])== T,]

     

f <-cbind(Q42_1,Q42_3,Q42_4,Q42_5,Q42_6,Q42_7,Q42_8,Q42_9,   Q43_1,Q43_2,Q43_3,Q43_4,Q43_5,   Q43_6)〜factor(pid3)+ factor(inc)+ factor(edu)+   因子(自己)+因子(年龄)+已婚+因子(Q59)+男性+ emp

     

lca2 <-poLCA(f,ur,nclass = 2,maxiter = 50000,tol = 0.00000000000001,   nrep = 5)

此外,潜在类中包含的所有列出的问题都包含在指定的dat的91:104范围内。

如何纠正此问题?

谢谢!

1 个答案:

答案 0 :(得分:0)

默认情况下,poLCA会忽略缺少任何清单变量的情况。它还省略了任何协变量缺失的情况。这称为“逐案删除”,它是处理缺失值的最常用方法。 这似乎是最可能造成案件丢失的原因。

poLCA命令选项为:-

poLCA(formula, data, nclass = 2, maxiter = 1000, graphs = FALSE, 
      tol = 1e-10, na.rm = TRUE, probs.start = NULL, nrep = 1, 
      verbose = TRUE, calc.se = TRUE)

帮助文件显示:-

  • na.rm

逻辑,关于poLCA如何处理清单变量中值缺失的情况。如果为TRUE,则在估算模型之前,将这些情况删除(逐级删除)。如果为FALSE,则保留缺少值的案例。缺少协变量的案例将始终被删除。默认值为TRUE。

我认为设置

na.rm = FALSE

将所有清单文件中缺少清单变量(而不是协变量)的值保留在其中。