R:需要使用双向阶乘MANOVA执行boxM的示例-我遇到了错误

问题描述

我正在尝试对两向MANOVA进行Box的协方差矩阵同质性M检验。

自昨天下午以来,我一直在搜索示例。我看到了将boxM与单向MANOVA结合使用的许多示例。在每种情况下,如果源也涵盖双向MANOVA,则不包括演示在双向情况下运行boxM测试。我只需要一个有效的例子。一旦有了语法,就可以使它起作用。

biotools软件包中的boxM函数表示它仅用于一个分类因子(单向MANOVA)。
https://www.rdocumentation.org/packages/biotools/versions/3.1/topics/boxM

heplots软件包中的boxM函数表示它可用于一个或多个分类因子-
https://www.rdocumentation.org/packages/heplots/versions/1.3-5/topics/boxM

-但是,当我尝试使用它时出现错误:“模型必须仅完全交叉公式。”

下面,我显示了单独使用任何一个因子时都不会出现错误,但是任何交叉因子的布置都会导致此错误。注意:在交叉变量的情况下运行Levene测试时,不会出现此错误。

Response1,Response2和Response3是连续的。
因子1有2个级别。因子2具有5个级别。

library(heplots)

> Model2 <- lm(cbind(Response1,Response2,Response3) ~ Factor1,data=Data40)
> boxM(Model2)

    Box's M-test for Homogeneity of Covariance Matrices

data:  Y
Chi-Sq (approx.) = 3.5562,df = 6,p-value = 0.7365

> Model2 <- lm(cbind(Response1,Response3) ~ Factor2,data=Data40)
> boxM(Model2)

    Box's M-test for Homogeneity of Covariance Matrices

data:  Y
Chi-Sq (approx.) = 35.079,df = 24,p-value = 0.06724

> Model2 <- lm(cbind(Response1,Response3) ~ Factor1 * Factor2,data=Data40)
> boxM(Model2)
Error in boxM.formula(formula(Y),data = eval(data,envir = environment(formula(Y))),: 
  Model must be completely crossed formula only.

> Model2 <- lm(cbind(Response1,Response3) ~ Factor1 + Factor2 + Factor1 * Factor2,Response3) ~ Factor1 + Factor2 + Factor1:Factor2,: 
  Model must be completely crossed formula only.

解决方法

不知道该软件包从未使用过,但是在经过几分钟的侦查之后,您似乎可能以一种不喜欢的方式指定公式...使用iris,因为软件包作者确实这样做了,您没有提供任何数据。

library(heplots)

# adding a bogus second factor to iris
iris$nonsense <- rep(1:2)
iris$nonsense <- factor(iris$nonsense)

# one factor
boxM( cbind(Sepal.Length,Sepal.Width,Petal.Length,Petal.Width) ~ nonsense,data=iris)
#> 
#>  Box's M-test for Homogeneity of Covariance Matrices
#> 
#> data:  Y
#> Chi-Sq (approx.) = 16.389,df = 10,p-value = 0.08904

# second factor
boxM( cbind(Sepal.Length,Petal.Width) ~ Species,data=iris)
#> 
#>  Box's M-test for Homogeneity of Covariance Matrices
#> 
#> data:  Y
#> Chi-Sq (approx.) = 140.94,df = 20,p-value < 2.2e-16

# crossed note not including the `lm`

boxM( cbind(Sepal.Length,Petal.Width) ~ Species * nonsense,data=iris)
#> 
#>  Box's M-test for Homogeneity of Covariance Matrices
#> 
#> data:  Y
#> Chi-Sq (approx.) = 169.1,df = 50,p-value = 7.609e-15

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...