如何解决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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。