我试图按照教程(点击这里:https://www.r-bloggers.com/latent-class-mixed-models-with-graphics/)用于运行潜类混合模型。我的模型已经正常运行,但我有阴谋潜伏类的问题。
Con2 < lcmm(ConT~AdminCount,random=~AdminCount,subject='PID',mixture=~AdminCount,ng=3,idiag=TRUE,data=datal,link="linear")
summary(Con2)
datal$CONid <- as.character(datal$PID)
people3 <- as.data.frame(Con2$pprob[1:2])
datal$CONgroup <- character(people3$class[sapply(datal$CONid, function(x) which(people3$CONid==x))])
当我尝试运行的代码的最后一行,我得到这个错误:
错误people3 $类[sapply(数据1 $ CONid,函数(X),这(people3 $ CONid ==:无效标类型 '列表'
任何想法此错误意味着/我该怎么解决这个问题?
这里拍照的我所有的代码和输出:
我们仍然无法重新创建你的错误;我没有找到original tutorial posting虽然还有full R code和data。
所以,我需要你的猜测错误。请注意,错误说法是,“下标是一个列表”。下标是函数调用sapply(datal$CONid, function(x) which(people3$CONid==x)
。在默认设定中,sapply-函数将返回一个列表中,如果该函数的返回值是不规则的长度(否则向量或矩阵)的。即,datal$CONid
的元素与people3$CONid
的条目间的不规则频率发生。
希望你可以从这里上工作。