RではANOVAを実行する際にoneway.test, aov, anovaを利用できる。違いが判らない。調べてみるとなんかややこしそうなのでとりあえず資料だけ集めてみた。
ONEWAY BETWEEN SUBJECTS ANOVAより
The advantage of using the oneway.test( ) function is obviously the Welch correction for nonhomogeneity. The disadvantages are it doesn’t give you a lot of information in the output, and there is no post hoc test available. The standard R function for all kinds of ANOVA is aov( ). It’s best to store the output of this function and then to extract the information you want by way of various extractor functions. This is the way we will be working with all future statistical procedures. Here is an example using the InsectSprays data…
http://tolstoy.newcastle.edu.au/R/e6/help/09/01/0939.html
The main difference is that aov() *fits* a single model and anova() *summarizes* a single model or compares two or more models.
http://r.789695.n4.nabble.com/lm-ANOVA-vs-AOV-td819452.html
The difference between the two is
intent of the analysis and the default presentation of the results.
With lm [Linear Model], the focus is on the effect of the individual
columns of the predictor matrix. The columns are usually interpreted
as values of real-valued observations. The regression coefficients
are usually meaningful and interesting.
With aov [Analysis Of Variance], the focus is on the effects of
factors. These are multi-degree of freedom effects associated with
categorical variables. The arithmetic is based on a set of dummy
variables constructed from a contrast matrix. The individual
regression coefficients themselves are not easily interpretable.
一般論で,2群(多群)の分散が等しいという仮定はあまりにもナイーブで,それを仮定した t.test(…, var.equal=TRUE) や oneway.test(…, var.equal=TRUE) や,aov, anova は不適切でしょう。
aov, anova の結果と一致しないからと言うことで t.test(…, var.equal=FALSE) を忌避するのは根拠に欠けると思います。
oneway.test が,いわゆる分散分析表を提示しないからというだけで難癖付けるのもどうかと思います。oneway.test の結果に基づいて完全な分散分析表を提示する関数を作るのもそうたいしたことでもないですし,そもそも,P値一個のために無駄なスペースを使う分散分析表を提示する必要性も認められません。
[…] さてoneway.test, aov, anovaの違いをもとにしてそれぞれの関数について調べてみる。 […]