科学の箱

科学・IT・登山の話題

R

oneway.test, aov, anovaの違い-2

投稿日:

さてoneway.test, aov, anovaの違いをもとにしてそれぞれの関数について調べてみる。

機能 advantage disadvantage
oneway.test 分散分析 等分散を仮定しないウェルチの分散分析 出力がいまいち
aov 分散分析 出力結果を保存し別の関数を使って必要に応じて情報を得る 等分散を仮定している。
anova lm()の結果から分散分析の結果を表示する  等分散を仮定している

oneway.testのメリットは等分散を仮定しないで分散分析を行える点である。oneway.testはデフォルトではウェルチの分散分析を実行する。分散の等質を前提にする時にはvar.equals=TRUEをパラメータで指定する。

oneway.testによるウェルチの分散分析については下記が詳しい。

No.12857 「welchの方法によるt検定」と「welchの分散分析」

しかしoneway.test()で出力される結果は下記のみで途中の計算結果を出力しない。そのため結果について疑問があるときに検証しにくい。

F = 4.515, num df = 3, denom df = 28, p-value = 0.01052

ただし途中結果の必要性については考慮する必要がある。余計なデータは、混乱を招く。

aov()は内部でlm()を実行して分散分析の結果を表示してくれる。分散分析を実施する際にはこの関数の利用数が一番多いように感じられる。aovと後述するanova+lmについての違いを質問している人もいるが回答を見るかぎり、機能としては同じようである。

anova()はlm()の結果から分散分析の結果を表示する。よく見かけるが線形回帰と分散分析は数学的には同じであるので、表示する内容を変えているだけといえる。

一般論では等分散を仮定するのは、現実的ではないというコメントをいただいた。等分散が一致することは考えにくいらしい。この場合には、等分散を仮定したt.test(…, var.equal=TRUE) 、 oneway.test(…, var.equal=TRUE) ,aov, anovaは不適切となる。

このあたりの議論について調べてみたところこの辺で記述されているっぽい。ちょっと難しいのでまた今度読んでみる。

あとt.test(…, var.equal=FALSE)が指定できるらしい。しかしt検定は等分散を仮定する。調べたところvar.equal=FALSEを指定するとウェルチの検定が実施される。

 

メタ情報

inarticle



メタ情報

inarticle



-R
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

回帰分析

回帰分析の手順 データを取得する。 回帰分析をする意味があるかを検討する 回帰分析のモデルを検討する 回帰分析をする 回帰分析の結果について考察する 回帰分析のメモ 回帰分析では目的変数を説明できる変 …

no image

data.frameについて注意すること

以前predict()について検証を進めていた際に、不可解なエラーが出てしまい、途中で調査をやめてしまったことがあった。 具体的なエラーは以下である。 > newGalton$child &lt …

no image

Rで集計をする

バイナリ ifelse()を利用する ファクタ factor()を利用する カテゴリ集計 cut()関数を利用する クロス集計 Rではクロス集計表を簡単に作れる。クロス集計表はtable()を利用する …

no image

Rで日付データをhistgramで表示するときのポイント

Rでヒストグラムはhist()関数を使って描画する。この時与えるデータによりブレーク引数が異なることがわかった。 まず下記がデフォルトのhist()関数のヘルプである。 hist(x, breaks …

no image

conjoint分析の資料

マニュアル conjointパッケージ caFactorialDesign Rでconjointパッケージを利用した例 Rでコンジョイント分析 Rでコンジョイント分析 |極めて個人的なメモ コンジョイ …

2014年5月
« 4月   6月 »
 1234
567891011
12131415161718
19202122232425
262728293031  

side bar top



アーカイブ

カテゴリー