• 検索結果がありません。

推定・検定の実際

ドキュメント内 x y 1 x 1 y 1 2 x 2 y 2 3 x 3 y 3... x ( ) 2 (ページ 78-85)

第 3 章 統計的推測 - 推定と検定

3.5 推定・検定の実際

1. Excelによる平均に関する推定と検定(Excel2007までのバージョンにも

対応)

(a) 観測または実験のデータ(標本)を作れ:165,162,171,...

(b) このデータの標本平均X¯をaverage(標本データ範囲)で、標本サイズ nをcounta(標本データ範囲)で出しておこう

(c) 検定において母平均µと比べる量µ0を決めよう

(d) このデータに関して、母平均の区間推定と検定をExcelで行おう

【母分散既知の場合の正規分布による方法】

(a) 信頼区間:[標本平均-d,標本平均+d]、ここでdは-norminv(α/2, 0, sqrt(母分散/標本サイズ))

(b) (注)P(X<norminv(p, m, v))=pなので、p<0.5かつm=0であれ

ばnorminvはマイナス値であることに注意

(c) (注)区間推定で使うのは両側z(α/2)値なので、norminvの第一引 数はα/2となる

(d) 両側検定の棄却域境界値:norminv(危険率/2, 0, sqrt(母分散/標本サ イズ))

(e) 両側検定のP値:normdist(-abs(標本平均-全国平均),0,sqrt(母分散/

標本サイズ), 1)*2

(f) (注)normdist(*, *, 1)は検定統計量までの累積確率を与えるので、

第一引数は絶対値をとる関数absを使ってマイナスであたえる (g) (注)両側P値はnormdistの値の2倍である

(h) 片側検定の棄却域境界値:norminv(危険率, 0, sqrt(母分散/標本サイ ズ))

(i) 片側検定のP値:normdist(-abs(標本平均-全国平均), 0, sqrt(母分散/

標本サイズ), 1)

【母分散未知の場合のt分布による方法】

(a) 信頼区間:[標本平均-t*sqrt(不偏分散/標本サイズ),標本平均+t*sqrt(不 偏分散/標本サイズ)]、ここでtはtinv(α,標本サイズ-1)

(b) (注)不偏分散は:var(標本データ範囲)

(c) (注)P(|X|>tinv(p, n))=pなので、tinvの場合はαをそのまま第 一引数として指定して正の両側t(α)値となる

(d) 両側検定の棄却域境界値:tinv(危険率,標本サイズ-1) (e) 両側検定のP値:tdist(abs(標本平均-全国平均), 0, 2) (f) (注)tdistの第3引数が2であると両側P値を与える

(g) (注)tdistは第一引数にマイナス値を与えるとエラーになるのでabs

(絶対値をとる関数)を使っている

(h) 片側検定の棄却域境界値:tinv(2*危険率,標本サイズ-1)

(i) (注)tinvは両側t(α)値を与えるので、片側の場合は危険率を2倍 する

(j) 片側検定のP値:tdist(abs(標本平均-全国平均),0 ,1) (k) (注)tdistの第3引数が1であると片側P値を与える

(l) (注)tdistは第一引数にマイナス値を与えるとエラーになるのでabs

(絶対値をとる関数)を使っている 2. Rによる平均に関する推定と検定

Rの基本的使い方については、この節の最後にまとめているので適宜参照 されたい。

上の母平均の推測はRでも同様に行うことができる。以下をデータを変え て実行してみよう

Rは関数名のみを入力してEnterするとその関数の引数がわかるし、help(関 数名)とすると詳しい使い方がわかる

まず、データを設定し標本サイズ、標準偏差、標本平均を出す。

> data <- c(3,5,4,6,5,7,3,8,4,5)

> n <- length(data)

> s <- sd(data)

> x_bar <- mean(data)

これに対し、正規分布による区間推定と検定を行う。

【母分散既知の場合の正規分布による方法】

sd(data)はdataの不偏標準偏差である。qnorm(p)は正規分布のP(X ≦ z) =pなるzである。pnorm(z)は正規分布のP(Xz)である

> z <- qnorm(0.975,mean=0,sd=s/sqrt(n))

> c(x_bar-z, x_bar+z) [1] 3.987879 6.012121

> 2*(1-pnorm(abs(6-x_bar),mean=0,sd=s/sqrt(n))) [1] 0.05280751

5%信頼区間を求めている。既知とする母分散には標本不偏分散を用いてい る(以下のt分布による方法との比較のため)。最後は、母平均が6を下回 るかの両側検定での(両側)P値である。

今度は同じデータに対し、t分布による区間推定と検定を行う。

【母分散未知の場合のt分布による方法】

qt(p)はt分布のP(X ≦t) =pなるtである。pt(x)はt分布のP(Xt) である

> t <- qt(0.975,df=n-1)*s/sqrt(n)

> c(x_bar-t, x_bar+t) [1] 3.831827 6.168173

> 2*(1-pt(abs(6-x_bar)/(s/sqrt(n)),n-1)) [1] 0.08478521

同じデータについて5%信頼区間と6を下回るかの検定をしているが、正 規分布の方法より精度は低い。

実は、Rには上の分析を一発でやる関数があるのでそれを使ってみよう:

> t.test(data,mu=6) One Sample t-test data: data

t = -1.9365, df = 9, p-value = 0.08479

alternative hypothesis: true mean is not equal to 6 95 percent confidence interval:

3.831827 6.168173 sample estimates:

mean of x 5

ここでは上と同様に両側検定を行っている。左片側にするには以下のよう にする。

> t.test(data,mu=6,alternative="less") One Sample t-test

data: data

t = -1.9365, df = 9, p-value = 0.04239

alternative hypothesis: true mean is less than 6 95 percent confidence interval:

-Inf 5.946615 sample estimates:

mean of x 5

これまでの母平均の検定はある定数と比べるものであったが、2つの母集 団の母平均を比べることも多い。これは理論はテキストに述べてあるとお りなので(授業でやっていなくても)ここで、Rを用いて実行してみよう。

上で実行したままに続けて以下を行う。

> data2 <- c(4,4,5,6,5,7,6,6,9,6)

> t.test(data,data2,var.equal=F) Welch Two Sample t-test

data: data and data2

t = -1.1494, df = 17.819, p-value = 0.2656

alternative hypothesis: true difference in means is not equal to 0

95 percent confidence interval:

-2.2633529 0.6633529 sample estimates:

mean of x mean of y

5.0 5.8

3. Rによる2項検定

無作為に選んだ100人からある政策に賛成かを聞いたところ賛成が55人 であった。賛成の割合が半数を越えたといってよいか検定せよ。という問 題を上述のように2項検定で右片側検定する。

まず、pbinom(k,n,p)を使ってP値を求めてみる。これはB(n, p)に従う Xに関してP(X≦k)を返す。

> 1-pbinom(54,100,0.5) [1] 0.1841008

これはP値を、B(100,0.5)に従うXに関してP(55≦X) = 1−P(X ≦54) として求めている。つぎにこれと同じことをbinom.testでやってみる。

> binom.test(c(55,45),p=0.5,alternative="greater") Exact binomial test

data: c(55, 45)

number of successes = 55, number of trials = 100 p-value = 0.1841

alternative hypothesis: true probability of success is greater than 0.5

95 percent confidence interval:

0.4628896 1.0000000 sample estimates:

probability of success 0.55 4. Rによる独立性の検定

以下は、前述の演習と成績の関係についての例題の再実行であるが、今回 はデータをファイルから読み込んでやってみよう。まず以下のようなテキ ストファイルをdata3.txtというファイル名で作成する(Excelの表をテキ ストデータで保存するか、エディタで作成するなど)。

20 49 10 6 20 41 0 12 34

ただし、数の区切りは「タブ」にしておくのがよい。

以下を行う前に、Rでディレクトリ指定しないで読み込むために、ファイ ルメニューから作業ディレクトリをdata3.txtを保存したディレクトリに 変更をしておく。

> data3<-read.table("data3.txt")

> data3 V1 V2 V3 1 20 49 10 2 6 20 41 3 0 12 34

> chisq.test(data3)

Pearson’s Chi-squared test data: data3

X-squared = 59.2687, df = 4, p-value = 4.132e-12

Rの実行結果は直接Rコンソール画面をドラッグコピーしてエディターに張っ て保存しよう

Rの基本的使用法:

1. Rの起動は、Windowsでは通常デスクトップ上のRのアイコンをダブル クリックする。するとRのコンソールと呼ばれるものが立ち上がる 2. Rのコンソールの>はこの右にコマンドを書くための印でプロンプトという 3. 以下は、データ3,4,5を変数dに代入するコマンドを入力したところである。

> d <- c(3,4,5)

<-は代入を意味する記号である(不等号<とマイナス記号-の二文字からで きている)。多くの場合=でもよいが、<-が標準である。この入力後Enter キーを押すことでこのコマンドが実行される

4. 上のコマンド実行後、dの値を知りたければ(dにちゃんと代入されたか 確かめたければ)単に

> d

と入力してEnterを押せば良い [1] 3 4 5

と表示される

5. Rのコンソール上では、既に実行したコマンドをマウスでクリックしても再 実行できない。再実行は上側矢印を押して過去のコマンドを呼出してEnter を押すことで行われる

ドキュメント内 x y 1 x 1 y 1 2 x 2 y 2 3 x 3 y 3... x ( ) 2 (ページ 78-85)

関連したドキュメント