7

サンプルが列ごとにグループ化されたデータセットがあります。次のサンプル データセットは、私のデータの形式に似ています。

a = c(1,3,4,6,8)
b = c(3,6,8,3,6)
c = c(2,1,4,3,6)
d = c(2,2,3,3,4)

mydata = data.frame(cbind(a,b,c,d))

上記のデータセットを使用して Excel で単一因子 ANOVA を実行すると、次の結果が得られます。

ここに画像の説明を入力

Rの典型的な形式は次のとおりです。

group  measurement
a      1
a      3
a      4
.      .
.      .
.      .
d      4

そして、R で ANOVA を実行するコマンドは、を使用することaov(group~measurement, data = mydata)です。 行ではなく列で整理されたサンプルを使用して、R で単一因子 ANOVA を実行するにはどうすればよいですか? つまり、R を使用して Excel の結果を複製するにはどうすればよいですか? 助けてくれてありがとう。

4

1 に答える 1

13

それらを長い形式で積み重ねます:

mdat <- stack(mydata)
mdat
   values ind
1       1   a
2       3   a
3       4   a
4       6   a
5       8   a
6       3   b
7       6   b
snipped output

> aov( values ~ ind, mdat)
Call:
   aov(formula = values ~ ind, data = mdat)

Terms:
                 ind Residuals
Sum of Squares  18.2      65.6
Deg. of Freedom    3        16

Residual standard error: 2.024846 
Estimated effects may be unbalanced

警告を考えると、使用する方が安全かもしれませんlm:

> anova(lm(values ~ ind, mdat))
Analysis of Variance Table

Response: values
          Df Sum Sq Mean Sq F value Pr(>F)
ind        3   18.2  6.0667  1.4797 0.2578
Residuals 16   65.6  4.1000               
> summary(lm(values~ind, mdat))

Call:
lm(formula = values ~ ind, data = mdat)

Residuals:
   Min     1Q Median     3Q    Max 
 -3.40  -1.25   0.00   0.90   3.60 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   4.4000     0.9055   4.859 0.000174 ***
indb          0.8000     1.2806   0.625 0.540978    
indc         -1.2000     1.2806  -0.937 0.362666    
indd         -1.6000     1.2806  -1.249 0.229491    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 2.025 on 16 degrees of freedom
Multiple R-squared: 0.2172, Adjusted R-squared: 0.07041 
F-statistic:  1.48 on 3 and 16 DF,  p-value: 0.2578 

また、なぜ Excel が別の答えを出すのか、私に聞かないでください。統計に関しては、Excel は一般的に非常に信頼性が低いことが示されています。Rに匹敵する答えが得られない理由を説明する責任はExcelにあります。

コメントに応じて編集: Excel データ分析パックの ANOVA プロシージャは出力を作成しますが、そのプロセスに Excel 関数を使用しないため、派生元のデータ セルのデータを変更してから F9 キーを押すか、または同等のメニュー再計算コマンドでは、出力セクションに変更はありません。これと、ユーザーおよび数値の問題のその他の原因は、統計計算に関する Excel の問題を評価する David Heiser の取り組みのさまざまなページに記載されていますHeiser は、Microsoft がこれらのエラーの責任を負うことを期待して、現在少なくとも 10 年にわたる彼の取り組みを開始しましたが、エラーを特定し、より良い手順を提案する彼や他の人々の取り組みを一貫して無視してきました。BD McCullough が編集した「Computational Statistics & Data Analysis」の 2008 年 6 月号には、Excel に関するさまざまな統計上の問題を扱った 6 つのセクションの特別レポートもありました。

于 2013-01-07T23:59:33.690 に答える