当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R anova.mlm 多元线性模型之间的比较


R语言 anova.mlm 位于 stats 包(package)。

说明

计算一个或多个多元线性模型的(广义)方差分析表。

用法

## S3 method for class 'mlm'
anova(object, ...,
      test = c("Pillai", "Wilks", "Hotelling-Lawley", "Roy",
               "Spherical"),
      Sigma = diag(nrow = p), T = Thin.row(Proj(M) - Proj(X)),
      M = diag(nrow = p), X = ~0,
      idata = data.frame(index = seq_len(p)), tol = 1e-7)

参数

object

"mlm" 的对象。

...

"mlm" 的其他对象。

test

检验统计量的选择(见下文)。可以缩写。

Sigma

(仅在 test == "Spherical" 时相关)。假设协方差矩阵与 Sigma 成比例。

T

变换矩阵。默认情况下根据 MX 计算。

M

说明外部投影的公式或矩阵(见下文)。

X

说明内部投影的公式或矩阵(见下文)。

idata

说明intra-block设计的数据帧。

tol

用于确定残差是否为 rank-deficient 的容差:请参阅 qr

细节

anova.mlm 方法使用汇总表的多元检验统计量,或基于球形假设的检验(即协方差与给定矩阵成正比)。

对于多变量检验,Wilks 统计量在文献中最为流行,但 Hand 和 Taylor (1987) 推荐使用默认的 Pillai-Bartlett 统计量。有关更多详细信息,请参阅summary.manova

对于 "Spherical" 测试,比例通常与单位矩阵相关,但可以使用 Sigma 指定不同的矩阵。给出了称为Greenhouse-Geisser、Huynh-Feldt、epsilon 的非球面校正,并执行调整后的 测试。

在测试之前改变观察结果是很常见的。这通常涉及到intra-block差异的转换,但可能会遇到更复杂的within-block设计,从而需要更复杂的转换。变换矩阵 T 可以直接给出,也可以指定为 MX 所跨越的空间上的两个投影之间的差,而这又可以作为矩阵或关于 idata 的模型公式给出(测试对于商空间的参数化是不变的 M/X )。

anova.lm 一样,所有测试统计数据都使用最大模型中的 SSD 矩阵作为(广义)分母。

与其他 anova 方法相反,在 single-model 情况下,截距不会从显示中排除。当涉及对比变换时,测试零截距通常很有意义。

继承自类 "data.frame" 的类 "anova" 的对象

注意

Huynh-Feldt epsilon 与 SAS 计算的 epsilon(自 v. 8.2 起)不同,除非 DF 等于观测值数量减一。这被认为是 SAS 中的错误,而不是R.

例子

require(graphics)
utils::example(SSD) # Brings in the mlmfit and reacttime objects

mlmfit0 <- update(mlmfit, ~0)

### Traditional tests of intrasubj. contrasts
## Using MANOVA techniques on contrasts:
anova(mlmfit, mlmfit0, X = ~1)

## Assuming sphericity
anova(mlmfit, mlmfit0, X = ~1, test = "Spherical")


### tests using intra-subject 3x2 design
idata <- data.frame(deg = gl(3, 1, 6, labels = c(0, 4, 8)),
                    noise = gl(2, 3, 6, labels = c("A", "P")))

anova(mlmfit, mlmfit0, X = ~ deg + noise,
      idata = idata, test = "Spherical")
anova(mlmfit, mlmfit0, M = ~ deg + noise, X = ~ noise,
      idata = idata, test = "Spherical" )
anova(mlmfit, mlmfit0, M = ~ deg + noise, X = ~ deg,
      idata = idata, test = "Spherical" )

f <- factor(rep(1:2, 5)) # bogus, just for illustration
mlmfit2 <- update(mlmfit, ~f)
anova(mlmfit2, mlmfit, mlmfit0, X = ~1, test = "Spherical")
anova(mlmfit2, X = ~1, test = "Spherical")
# one-model form, eqiv. to previous

### There seems to be a strong interaction in these data
plot(colMeans(reacttime))

参考

Hand, D. J. and Taylor, C. C. (1987) Multivariate Analysis of Variance and Repeated Measures. Chapman and Hall.

也可以看看

summary.manova

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Comparisons between Multivariate Linear Models。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。