我试图在R中运行重复测量MANOVA,其中还包含许多因变量(行为任务的关键结果变量)。重复措施是由于交叉设计,其中个人服用药物和安慰剂(按随机顺序)。
我正在运行的代码如下所示:
imatrix <- matrix(c(
1, 0, 0, 0, 0, 0, 1,
1, 0, 0, 0, 0, 0, -1,
0, 1, 0, 0, 0, 0, 1,
0, 1, 0, 0, 0, 0, -1,
0, 0, 1, 0, 0, 0, 1,
0, 0, 1, 0, 0, 0, -1,
0, 0, 0, 1, 0, 0, 1,
0, 0, 0, 1, 0, 0, -1,
0, 0, 0, 0, 1, 0, 1,
0, 0, 0, 0, 1, 0, -1,
0, 0, 0, 0, 0, 1, 1,
0, 0, 0, 0, 0, 1, -1
), 12, 7, byrow=TRUE)
colnames(imatrix) <- c("BCST", "CGT", "AST", "AGN", "DDT", "FERT", "NAC")
(imatrix <- list(measure=imatrix[,1:6], condition=imatrix[,7]))
contrasts(condition_factor) <- matrix(c(-1,1,1, -1), ncol=2)
doubly.mod<-lm(cbind(bcst_nac$totPersErr,bcst_placebo$totPersErr,cantab_nac$CGT.Delay.aversion,cantab_placebo$CGT.Delay.aversion,cantab_nac$AST.Switching.cost..Mean..correct.,cantab_placebo$AST.Switching.cost..Mean..correct.,cantab_nac$AGN.Affective.response.bias..Mean.,cantab_placebo$AGN.Affective.response.bias..Mean.,aucs_NAC,aucs_placebo,fert_nac$FERTACCHA,fert_placebo$FERTACCHA)~1))
Manova(doubly.mod, imatrix=imatrix, type =3)
结果是这个错误:Anova.III.mlm中的错误(mod,SSPE,error.df,idata,idesign,icontrasts,: (list)对象无法强制键入&#39; double&#39; 但是,当我将imatrix从列表更改回矩阵时,我收到此错误响应:
do.call(cbind,imatrix)出错:第二个参数必须是列表
我基于汽车:: Anova包中关于双重多变量分析的例子。如果您能提供帮助,或者我可以添加任何内容以使此问题更清楚,请告诉我。