我正在学习R并试图了解lm()
如何处理因子变量&如何理解ANOVA表。我对统计数据比较陌生,所以请温柔地对待我。
这是来自烂番茄的一些电影数据。我试图根据4组中所有电影的平均分数来模拟每部电影的得分:评分为G,PG,PG-13和R的那些。
download.file("http://www.rossmanchance.com/iscam2/data/movies03RT.txt", destfile = "./movies.txt")
movies <- read.table("./movies.txt", sep = "\t", header = T, quote = "")
lm1 <- lm(movies$score ~ as.factor(movies$rating))
anova(lm1)
和ANOVA输出:
## Analysis of Variance Table
##
## Response: movies$score
## Df Sum Sq Mean Sq F value Pr(>F)
## as.factor(movies$rating) 3 570 190 0.92 0.43
## Residuals 136 28149 207
我了解如何获取此表中的所有数字,Sum Sq
除Mean Sq
和as.factor(movies$rating)
。有人可以解释一下如何根据我的数据计算Sum Sq
吗?我知道Mean Sq
只是Sum Sq
除以Df
。
答案 0 :(得分:1)
有各种方法可以实现这一目标。其中之一是使用等式:
http://en.wikipedia.org/wiki/Sum_of_squares_(statistics)
SS_total = SS_reg + SS_error
所以:
y = movies$score
sum((y - mean(y))^2) - sum(lm1$residuals^2)