{r setup, include=FALSE} knitr::opts_chunk$set(eval = FALSE) {r message=FALSE, warning=FALSE, include=FALSE} library(tidyverse)
{r echo=FALSE, message=FALSE, warning=FALSE} tibble::tribble( ~term, ~df, ~sumsq, ~meansq, ~statistic, ~p.value, "class", 3L, 236.5644, 78.85481, 21.73467, 0L, "Residuals", 791L, 2869.8003, 3.628066, NA, NA ) %>% knitr::kable()
<!-- 这是anova检验的结果,怎么解读呢? -->
首先class相当于一个分类变量,类似于回归中的$x$, Residuals是未解释部分,类似于回归中的$\hat \mu$。 df=3是因为这里有四类,去掉一个对照组,失去了三个自由度。 791是剩余的自由度(n-1-k)。
sumsq表示波动,236.5644是解释部分,2869.8003是未解释部分,因此,
$$R^2 = \frac{236.5644}{236.5644+2869.8003}$$
其中meansq = sumsq/df。 这里的
$$F = \frac{78.854810}{3.628066}$$
根据这个特性,
$$R_{adj.}^2 = 1- \frac{\frac{2869.8003}{791}}{\frac{236.5644+2869.8003}{791+3}}$$
感觉和F值很类似啊,都是求单位自由度的波动。 因为都是考虑了波动和自由度的两个因素。