我正在尝试运行glmmLasso
来使用命令估计混合模型:
glm1_final <- glmmLasso(Activity~Novelty + Valence + ROI, rnd =
list(Subject=~1), data = KNov, lambda=lambda[opt],switch.NR=F,final.re=TRUE)
此代码基本上来自demo("glmmLasso-soccer")
,但我的变量被替换。活动是大脑活动的衡量标准,新奇和价值是编码用于引发响应的刺激类型的分类变量,ROI是分类变量编码我们从这个活动中抽取了大脑的三个区域。对象是从中采样数据的个体的ID号(n = 94)。 lambda[opt]
是在上一步中设置的,虽然上一步也给我提出了相关错误,所以我不知道它是否准确。
我一直收到两个警告:
警告消息:1:在split.default((1:ncol(X))[ - inotpen.which],ipen):数据长度不是拆分变量2的倍数:在est.glmmLasso.RE(修复= fix,rnd = rnd,data = data,lambda = lambda ,:集群变量应指定为因子变量!
如果ROI在模型中,则首先出现。我还没有确定我可以对模型做出的任何改变,以使第二个消失。
我不知道这些警告意味着什么,谷歌也没有发现任何相关信息。我仍然可以估算出我的参数,我只是不知道它们是否准确,因为我不知道警告的含义。
任何人都知道这些警告意味着什么?
更新:
我已将我的数据的已删除版本上传到:Google Drive
我已经确认如果我运行代码,我仍然会收到第二个错误:
KNov <- read.table("Nov_abr.txt", header = TRUE)
KNov$Subject <- factor(KNov$Subject)
library(glmmLasso)
glmmLasso(Activity~Novelty + Valence + ROI, rnd = list(Subject=~1), data = KNov, lambda=10,switch.NR=F,final.re=TRUE)
KNov $ Subject&lt; - factor(KNov $ Subject)确实清除了另一个错误。
我的版本是:R版本3.3.0(2016-05-03),平台:&#34; i386-w64-mingw32&#34;
答案 0 :(得分:3)
你应该使用
to_datetime
删除第一个警告,并在固定效果公式中pd.to_datetime(x, format='%Y/%m/%d_%H:%M')
,如文档所示(下面重点介绍):
修复:一个双面线性公式对象描述 模型的固定效应部分,响应于 左边的'〜'运算符和术语,用'+'分隔 运营商,在右边。 对于分类协变量使用 公式中的'as.factor(。)'。注意,即相应的 虚拟对待被视为一个组并按块更新
所以
KNov$Subject <- factor(KNov$Subject)
似乎有效(我仍然会收到警告,但我认为这是因为我使用了一小部分数据)。 (此语法也在&#34;线性混合模型中使用分类协变量&#34;示例在as.factor(ROI)
中说明。)是的,获得更明确的警告消息会很好,但答案是在文档中......