我可以使用anova
函数来获取线性模型的ANOVA表。然而,这给出了每个解释变量对响应变量的单独影响。我想知道R中是否有任何函数可以获得overall ANOVA
我们可以获得所有解释变量对响应变量的总体影响。在此先感谢您的帮助。
set.seed(12345)
X1 <- 10*abs(rnorm(n=10, mean = 5, sd = 1))
X2 <- 20*abs(rnorm(n=10, mean = 4, sd = 2))
Y <- 50*abs(rnorm(n=10, mean = 10, sd = 4))
df <- data.frame(X1, X2, Y)
fm1 <- lm(formula=Y~X1+X2, data=df)
anova(fm1)
Analysis of Variance Table
Response: Y
Df Sum Sq Mean Sq F value Pr(>F)
X1 1 37842 37842 0.7815 0.406
X2 1 115774 115774 2.3910 0.166
Residuals 7 338941 48420
已编辑(2017-10-23)
所需的输出是
Analysis of Variance Table
Response: Y
Df Sum Sq Mean Sq F value Pr(>F)
Regression 2 153616.587 76808.293 1.586 0.2703
Residuals 7 338940.570 48420.081
答案 0 :(得分:5)
好的,让我们试试这个:拟合的F统计量比较拟合与没有预测因子的拟合,例如:适合Y~1
。所以
anova(lm(Y~1,df),lm(Y~X1+X2,df))
# Analysis of Variance Table
#
# Model 1: Y ~ 1
# Model 2: Y ~ X1 + X2
# Res.Df RSS Df Sum of Sq F Pr(>F)
# 1 9 492557
# 2 7 338941 2 153617 1.5863 0.2703
为您提供拟合的F统计量的组成部分:
summary(lm(Y~X1+X2,df))$fstatistic
# value numdf dendf
# 1.58629 2.00000 7.00000