2016-06-02 2 views
0

私はpanel(5x5)を持っていますが、5年間と5人の1日あたりの氷クリームの平均値があります。私はこのパネルについてmean=50という仮説検定を行いたいと思っています。 Rでこれを手伝ってください。私はサンプルコードがないので、進める方法が分かりません。私のデータを以下に示します。R:パネルデータの仮説検定

# dput(Sample) 

structure(list(Year = c(2011, 2011, 2011, 2011, 2011, 2012, 2012, 
2012, 2012, 2012, 2013, 2013, 2013, 2013, 2013, 2014, 2014, 2014, 
2014, 2014, 2015, 2015, 2015, 2015, 2015), Person = c("A", "B", 
"C", "D", "E", "A", "B", "C", "D", "E", "A", "B", "C", "D", "E", 
"A", "B", "C", "D", "E", "A", "B", "C", "D", "E"), 
'Mean of Ice-cream units per day' = c(45, 
40, 35, 55, 65, 57, 49, 45, 32, 27, 85, 79, 85, 48, 35, 15, 6, 
99, 45, 47, 49, 85, 35, 66, 99)), class = c("tbl_df", "tbl", 
"data.frame"), row.names = c(NA, -25L), .Names = c("Year", "Person", 
"Mean of Ice-cream units per day")) 
+0

あなたが提供するデータは、同じ5人の人々が毎年アイスクリームを食べることを意味しますが、リンクする例は、毎年5人が独立してサンプリングされることを意味します。どちらが正しい?それが後者なら、(データXの3番目の変数の名前を変更して単純なままにして、データフレーム 'dt'を呼び出す):' aov(X〜factor(Year)、data = dt) 'が動作するはずです。これによって返されるF値は、あなたがリンクしている投稿に記載されている値と同じでなければなりません。 –

+0

毎年同じ5人がアイスクリームを食べているということです。私は尤度比を使用するように提案したので、それにリンクしました。他の方法も歓迎です。 –

+0

親愛なる@David_Bこの質問で私を助けてくださいますか? –

答えて

1

OK、私はあなたの問題はRを理解していないよりも、実際に統計を理解していない以上で、その結果、これは私ので、あなたが本当に必要なものではないかもしれないと思う正直に言うが、(みます私は統計家ではない)。 ANOVAを使用して平均が平等ではないという仮説を簡単にテストすることができます(aov関数、または等価的にはlmを使用する線形回帰を使用します)。後者は後で役に立ちますので、これを使用します。あなたは、彼らがすべて等しいという帰無仮説を棄却することができます場合は、手順、論理的に、ので、あなたは彼らがすべて同様に任意の特定の値に等しいという帰無仮説を棄却することができます。

> l1 <- lm(X ~ Year, dta) 
> summary(l1) 

Call: 
lm(formula = X ~ Year, data = dta) 

Residuals: 
    Min  1Q Median  3Q Max 
-36.4 -15.0 2.6 15.0 56.6 

Coefficients: 
      Estimate Std. Error t value Pr(>|t|)  
(Intercept) 48.00  10.66 4.502 0.000218 *** 
Year2012  -6.00  15.08 -0.398 0.694896  
Year2013  18.40  15.08 1.220 0.236535  
Year2014  -5.60  15.08 -0.371 0.714242  
Year2015  18.80  15.08 1.247 0.226856  
--- 
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 23.84 on 20 degrees of freedom 
Multiple R-squared: 0.2165, Adjusted R-squared: 0.05983 
F-statistic: 1.382 on 4 and 20 DF, p-value: 0.2758 

これは、あなたがそれを行うだろうかです2011年の平均値はIntercept(48)と等しく、2012年の平均値は48 - 6 = 42であり、毎年平均が平等であるためには、すべての年ダミー変数はゼロでなければなりません。

あなたの目的のために、あなたが興味を持っているのは最後の行です。これは、この回帰が、傍受だけを含むモデルの大幅な改善であるかどうかのテストを示しています。インターセプトのみのモデルは、すべてのダミー変数の推定値がゼロであると言うことと同等です。したがって、帰無仮説を棄てることができれば(最後の行のp値が< 0.05だった場合)、少なくとも1年のうちの少なくとも1年は他と有意差があると言えるので、終了します。通常、このタイプのデータのほとんどの分析が停止します。残念ながら、これは、平均= 50をテストするためにもう少し進む必要があるので、あなたの場合はそうではありません。これまで、毎年の平均が「グランド平均」に等しいという仮説を53.12 。それでlinearHypothesis関数を使用することができます。

> library(car) 
> linearHypothesis(l1, c("(Intercept) = 50", "Year2012 = 0", "Year2013 = 0", "Year2014 = 0", "Year2015 = 0")) 
Linear hypothesis test 

Hypothesis: 
(Intercept) = 50 
Year2012 = 0 
Year2013 = 0 
Year2014 = 0 
Year2015 = 0 

Model 1: restricted model 
Model 2: X ~ Year 

    Res.Df RSS Df Sum of Sq  F Pr(>F) 
1  25 14752       
2  20 11367 5 3384.8 1.1911 0.3487 

このモデルは、平均値の推定値は、毎年で(つまり、インターセプトだ)、および平均は毎年異なることが許可されている1と比較し50であることを制約します。このp値が< 0.05でもないことがわかります。その結果、毎年平均が50であるという帰無仮説を棄却することはできません。

私は統計者ではないので、これは問題の正しい解決策ではないかもしれませんが、あなたが提供した問題の仕様を考えれば、私の推測は最高です。

関連する問題