• Like
Nagoya.R #8 入門者講習資料
Upcoming SlideShare
Loading in...5
×

Nagoya.R #8 入門者講習資料

  • 1,335 views
Uploaded on

Nagoya.R #8 入門者講習での資料。フォントの話やグラフの話を追加しました。(丁寧に話すと2時間かかります)

Nagoya.R #8 入門者講習での資料。フォントの話やグラフの話を追加しました。(丁寧に話すと2時間かかります)

More in: Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,335
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
12
Comments
0
Likes
3

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 第1部:入門者講習 2012-05-19 Nagoya.R #8 @ Nagoya Univ.Saturday, May 19, 12
  • 2. Agenda 1. R 概論 2. 関数と変数が命 3. 外部データの読込 4. あっという間に作図 5. R で検定Saturday, May 19, 12
  • 3. Agenda 1. R 概論 2. 関数と変数が命 3. 外部データの読込 4. あっという間に作図 5. R で検定Saturday, May 19, 12
  • 4.  とは何か • 統計処理を目的とするプログラミング言語 • 作者:Ross Ihaka & Robert Gentleman (R & R) • Ross Ihaka and Robert Gentleman. R: A language for data analysis and graphics. Journal of Computational and Graphical Statistics, 5(3):299-314, 1996. • http://biostat.mc.vanderbilt.edu/twiki/pub/Main/JeffreyHorner/JCGSR.pdf • 無償+オープンソースのソフトウェアSaturday, May 19, 12
  • 5. 要するに 統計ソフトSaturday, May 19, 12
  • 6.   の何が良いのか • 無償 (IBM SPSS Statistics は約10万円で保守なし...) • 統計処理の種類が豊富 • グラフィックスが美しいSaturday, May 19, 12
  • 7.  の弱点 •文字ベースの操作 • プログラムを組む感覚を養成 • (確実に伝わるという利点あり) •多方面の知識が必要 • 英語+統計+計算機 に関する知識Saturday, May 19, 12
  • 8. UgeeeeeeeeeSaturday, May 19, 12
  • 9. Excel や SPSS は... • 高価(気軽に試せない) • 処理が信頼できず • Excel のひどい話(青木先生@群馬大) • グラフィックスが美しくないSaturday, May 19, 12
  • 10. Excel SPSSSaturday, May 19, 12
  • 11.   の基本操作 -Install / Update / Uninstall-Saturday, May 19, 12
  • 12.   のインストール 1. http://www.r-project.org/ にアクセス 2. “download R” をクリック 3. JAPAN の中から、どれか1つを選ぶ 4. 使っている OS のリンクをクリックSaturday, May 19, 12
  • 13.   のインストール • Windows: : http://cran.md.tsukuba.ac.jp/bin/windows/base/ •「Download R 2.14.0 for Windows」をクリック • Mac OS X: http://cran.md.tsukuba.ac.jp/bin/macosx/ •「R-2.14.0.pkg (latest version)」をクリックSaturday, May 19, 12
  • 14. Saturday, May 19, 12
  • 15. Saturday, May 19, 12
  • 16. Saturday, May 19, 12
  • 17. Saturday, May 19, 12
  • 18. Saturday, May 19, 12
  • 19. Saturday, May 19, 12
  • 20.   のアップデート 1. http://www.r-project.org/ にアクセス 2. 自分が使っているバージョンより 新しいものが出ているか確認 3. 新規にインストール用ファイルを ダウンロードの上、インストールSaturday, May 19, 12
  • 21.   のアップデート • 注意: 重大なセキュリティ上の問題が   ない限り,むやみに更新しない • パッケージ(付加機能)の動作不良回避 • 補足:Windows 版は新旧の共生可 • 何がどう共有されているか不明Saturday, May 19, 12
  • 22.  のアンインストール • Windows • [ Windows XP] コンパネ→プログラムの追加と削除 • [ Windows 7 ] コンパネ→プログラムのアンインストール • Mac OS X • /Applications にある    アイコンと /Library の中の Frameworks にある R. framework を削除(CleanApp 可)Saturday, May 19, 12
  • 23.   の起動 • Windows • START → Program → R → R 2.14.1 • Mac OS X • /Applications 内の R アイコンをクリック R の「コンソール」表示を確認Saturday, May 19, 12
  • 24.   の終了 • Windows も Mac OS X も 1.「q()」と入力 2. 今は作業スペースの保存をしない 3. ウィンドウが消えて、R 終了Saturday, May 19, 12
  • 25.   で困ったら... • まずは help(sth) を実行 • seekR(http://seekr.jp/) • R SEEK(http://www.rseek.org/) • RjpWiki (http://www.okada.jp.org/RWiki/) • R-Tips (http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html) • R による統計処理 (http://aoki2.si.gunma-u.ac.jp/R/)Saturday, May 19, 12
  • 26.   概論まとめ •    は統計ソフト • 無償+何でも統計+美しい作図 • 困ったら help(sth) !!Saturday, May 19, 12
  • 27. Excel SPSSSaturday, May 19, 12
  • 28. Agenda 1. R 概論 2. 関数と変数が命 3. 外部データの読込 4. あっという間に作図 5. R で検定Saturday, May 19, 12
  • 29. Agenda 1. R 概論 2. 関数と変数が命 3. 外部データの読込 4. あっという間に作図 5. R で検定Saturday, May 19, 12
  • 30. 前置きが長くなりましたが どんどん実行しましょうSaturday, May 19, 12
  • 31. まずは四則演算 • 式を入力し [Enter] を押す • > 3+5 [Enter] • > 10-3 [Enter] • > 2*3 [Enter] • > 100/20 [Enter] • > (12 + 34 -56) * 78 / 90 [Enter]Saturday, May 19, 12
  • 32. もうちょっと複雑に • 次の違いは? • > 100^1/2 • > 100^(1/2)Saturday, May 19, 12
  • 33. いままでのものは 単なる計算式でしたがSaturday, May 19, 12
  • 34.  といえば 関数 が命Saturday, May 19, 12
  • 35. 関数とは 指定した値に対して 何らかの処理をして 結果を返すものSaturday, May 19, 12
  • 36. 何言ってんの? “I dont know !” by fmgbain http://www.flickr.com/photos/fmgbain/4382010455/Saturday, May 19, 12
  • 37. なにはともあれ 実行してみましょうSaturday, May 19, 12
  • 38. sqrt():平方根 • > sqrt(2) • > sqrt(144) • > sqrt(104976)Saturday, May 19, 12
  • 39. 「関数(値)」が命 • には多数の関数がある •q() や help(sth) も関数 •必要な関数をしつこく実行Saturday, May 19, 12
  • 40.   といえば 変数 も命Saturday, May 19, 12
  • 41. 変数とは 1つ以上の値を まとめていれておく 「箱」のことSaturday, May 19, 12
  • 42. では ベクトルとも呼ばれ 複数の値を1つに まとめたものを指すSaturday, May 19, 12
  • 43. 統計処理などを行うには 複数の値をまとめて扱う ことが必要で それを使い回すために 変数を使うSaturday, May 19, 12
  • 44. ちなみに 変数に数値を 入れることを 「代入」といいますSaturday, May 19, 12
  • 45. また何言ってんの? “I dont know !” by fmgbain http://www.flickr.com/photos/fmgbain/4382010455/Saturday, May 19, 12
  • 46. なにはともあれ 実行してみましょうSaturday, May 19, 12
  • 47. 変数の名前は “hako” • > hako <- c(1,2,3,4,5) •• > hako c() 関数:combine ( ) cf. https://twitter.com/#!/sakaue/status/193708048030760960 • 値を1つにまとめる関数 • 逆に書いても(一応)OKSaturday, May 19, 12
  • 48. c()関数の “<-” は何? hako <- c(1,2,3,4,5) の “<-” は 左向きの矢印(←) を表現Saturday, May 19, 12
  • 49. コンソールで「+」が出たら... • 入力中に誤って[Enter] を押すと, 待機状態を示す「+」が出る • [STOP] ボタンでキャンセル • [Esc] キーでキャンセルSaturday, May 19, 12
  • 50. 履歴機能と補完機能 •履歴:上下の矢印キー •補完:TabキーSaturday, May 19, 12
  • 51. 現在、hako という名前の 「変数」の中に 1から5までの5つの数字が まとめて入っている状態Saturday, May 19, 12
  • 52. では 使い回してみましょうSaturday, May 19, 12
  • 53. 以下の関数を実行 •> sqrt(hako) • > log(hako)Saturday, May 19, 12
  • 54. もし変数がなかったら 何度も関数を 繰り返す羽目になる sqrt(1), sqrt(2) ... sqrt(5) log(1), log (2) ... log (5)Saturday, May 19, 12
  • 55. 一括処理のために 変数(ベクトル)の 利用は不可欠Saturday, May 19, 12
  • 56. では変数を もっと使い回して みましょうSaturday, May 19, 12
  • 57. 以下の関数で実行 • 基本統計量を求める:summary() • 度数分布表を作る:table() • 合計する:sum() • データの個数を求める:length()Saturday, May 19, 12
  • 58. 続いてこちらも実行 • 平均値を求める:mean() • 最大値と最小値を求める:max(), min() • 中央値を求める:median() • 標準偏差を求める:sd()Saturday, May 19, 12
  • 59. ここまでのまとめ • Rは「関数」と「変数」が命 • 関数を使って数値を処理 • q(), help(), sqrt(), log(), c() • 変数を使って一括処理!Saturday, May 19, 12
  • 60. 今日は メモを頼りに 実行できれば OKSaturday, May 19, 12
  • 61. Agenda 1. R 概論 2. 関数と変数が命 3. 外部データの読込 4. あっという間に作図 5. R で検定Saturday, May 19, 12
  • 62. Agenda 1. R 概論 2. 関数と変数が命 3. 外部データの読込 4. あっという間に作図 5. R で検定Saturday, May 19, 12
  • 63. Sub topics 1. 行列のおはなし 2. データフレーム 3. 外部データの読込Saturday, May 19, 12
  • 64. さきほど 一行で表せる数値を 扱いましたがSaturday, May 19, 12
  • 65. 実際のデータは 複数行あるはずSaturday, May 19, 12
  • 66. 例えば... •身長と体重 •年齢と年収 • 覚えた単語数とTOEICスコアSaturday, May 19, 12
  • 67. 表にすれば... 身長 体重 A 180 75 B 170 65 C 165 60 D 175 70 E 190 80Saturday, May 19, 12
  • 68. 複数の行や列で表される データを扱うために Rでは「行列」を使うSaturday, May 19, 12
  • 69. 行列とは 数値が縦横に並べられたものSaturday, May 19, 12
  • 70. 1 2 3 4 5 6 7 8 9Saturday, May 19, 12
  • 71. Saturday, May 19, 12 行
  • 72. 1 2 3 4 5 6 7 8 9Saturday, May 19, 12
  • 73. 1 2 3 4 5 6 7 8 9Saturday, May 19, 12
  • 74. 1 2 3 4 5 6 7 8 9Saturday, May 19, 12
  • 75. Saturday, May 19, 12 列
  • 76. 1 2 3 4 5 6 7 8 9Saturday, May 19, 12
  • 77. 1 2 3 4 5 6 7 8 9Saturday, May 19, 12
  • 78. 1 2 3 4 5 6 7 8 9Saturday, May 19, 12
  • 79. ひとまず 「行列」という存在を 知ってやってくださいSaturday, May 19, 12
  • 80. そんな行列を扱うために matrix() 関数 を使うSaturday, May 19, 12
  • 81. matrix() 関数 • 行列を作る関数 • matrix(要素, 行の数, 列の数) • デフォでは列方向に配置Saturday, May 19, 12
  • 82. このようなデータなら 身長 体重 A 180 75 B 170 65 C 165 60 D 175 70 E 190 80Saturday, May 19, 12
  • 83. 行列を作ってみる karada <- matrix(c(180, 170, 165, 175, 190, 75, 65, 60, 70, 80), 5, 2) 1. c() 関数で、数値を連結 2. matrix() 関数で、行列に変換 • 「5行で2列」にするという指定をする 3. karada という名の変数に代入Saturday, May 19, 12
  • 84. > karada と入力して 変数の中身を確認Saturday, May 19, 12
  • 85. matrix(1:9,nrow=3,ncol=3) 1 4 7 2 5 8 3 6 9Saturday, May 19, 12
  • 86. matrix(1:9,nrow=3,ncol=3,byrow=TRUE) 1 2 3 4 5 6 7 8 9Saturday, May 19, 12
  • 87. 行列の要素を取り出す 1. 行列を作り、変数に代入 2. 変数の中から見たい行や列を指定Saturday, May 19, 12
  • 88. 行列の要素を取り出す demo <- matrix(1:30,nrow=5,ncol=6) http://gyazo.com/76c58d5d6c8426a44f160897cda99671.pngSaturday, May 19, 12
  • 89. 行列の要素を取り出す 2行目を表示 → demo[2,] 2列目を表示 → demo[,2] http://gyazo.com/6726084afd9e1cc4b03df85fe6bc0f29.pngSaturday, May 19, 12
  • 90. 行列の要素を取り出す 2行目と4行目を表示 → demo[c(2,4),] 2列目と4列目を表示 → demo[, c(2,4)]Saturday, May 19, 12
  • 91. 行列の要素を取り出す http://gyazo.com/a116c0e2f1284ea7d38bf7024d92f1cc.pngSaturday, May 19, 12
  • 92. 行列まとめ • 横方向が行、縦方向が列 • デフォルトでの数値の並びに注意 • 必要な要素を適宜取り出して値を確認Saturday, May 19, 12
  • 93. Sub topics 1. 行列のおはなし 2. データフレーム 3. 外部データの読込Saturday, May 19, 12
  • 94. データフレームとは • いろんなデータを突っ込んだもの • いろんな=質的データ+量的データ • 突っ込む=一緒に並んでいることSaturday, May 19, 12
  • 95. データフレームとは 名前 血液型 身長 体重 坂本 B 175 65 高橋 B 177 70 阿部 B 174 75 長野 A 179 70 松本 O 170 60Saturday, May 19, 12
  • 96. データフレームとは • Excel の WS とほぼ同じイメージ • データが大量になれば必須のもの • 既存データの読込>自力で作るSaturday, May 19, 12
  • 97. 自力で作るなら... • data.frame()関数を使う (p.240) • ベクトルを連結して作る (p.243) • 行列をデータフレームに変換 (p.243)Saturday, May 19, 12
  • 98. じゃあ 実際に自力で作るか といったら...Saturday, May 19, 12
  • 99. ああー聞こえないー “173.365 - Come on, feel the noise” by Jeff the Trojan http://www.flickr.com/photos/trojanguy/3046207115/Saturday, May 19, 12
  • 100. そこで 外部データの読込 を行おうSaturday, May 19, 12
  • 101. Sub topics 1. 行列のおはなし 2. データフレーム 3. 外部データの読込Saturday, May 19, 12
  • 102. ここはトラブル多発地域です うまくいかない時は まず説明をお聴きくださいSaturday, May 19, 12
  • 103. おそらく... • Excel でのデータ管理が一般的 • そのデータをそのまま活かしたい →では、やりましょうSaturday, May 19, 12
  • 104. 作業ディレクトリの設定 • 作業ディレクトリとは... • データを読み込む場所 • データを書き出す場所Saturday, May 19, 12
  • 105. 作業ディレクトリの設定 • Windows:ファイル → ディレクトリの変更 • 今日は “MyDocuments” に設定 • Mac OS X:環境設定 → 一般(起動) • Linux:up to you...Saturday, May 19, 12
  • 106. 作業ディレクトリの設定 • コンソールからの確認・設定も可能 • getwd()関数:現在の設定を確認 • > getwd() • setwd()関数:現在の設定を変更 • > setwd("/Users/sakaue/Desktop/")Saturday, May 19, 12
  • 107. データの読込 その1 • read.csv() 関数 • CSV 形式のファイルを読み込む • CSV: Comma Separated ValueSaturday, May 19, 12
  • 108. データの読込 その1 1. demo.csv を作業ディレクトリへ移動 • XLS/XLSX 形式のものは保存時に変換 • CSV ファイルの文字コードは UTF-8 に 2. > test <- read.csv(“demo.csv”) で代入 3. > test [Enter] で中身を確認Saturday, May 19, 12
  • 109. CSVとか ダルいんですけど... という方にSaturday, May 19, 12
  • 110. データの読込 その2 • read.delim() 関数 • 表形式のデータ読み込む • delim: delimiter(区切り文字)Saturday, May 19, 12
  • 111. データの読込 その2 1. demo.xls を開き,マウスで範囲指定する 2. > test2 <- read.delim("clipboard") で代入 Mac の場合: read.delim(pipe(“pbpaste”)) 3. > test2 [Enter] で中身を確認Saturday, May 19, 12
  • 112. 読み込んだら関数で処理 > table(test2[,1]) • 度数分布を確認する 1列目対象 > mean(test2[,2]) • 平均値を求める 2列目対象 > hist(test2[,2]) • ヒストグラムを描く 2列目対象Saturday, May 19, 12
  • 113. 外部データの読込 • 作業ディレクトリの設定に注意 • CSV 形式に変換後、read.csv()関数で読込 • 必要な行 or 列を指定して処理Saturday, May 19, 12
  • 114. CSV 形式にして 読み込めば 重たいExcelファイルに おさらばですよ! “y2.d175 | Lasershow! Relax!” by B Rosen http://www.flickr.com/photos/rosengrant/4751386872/Saturday, May 19, 12
  • 115. Excel SPSSSaturday, May 19, 12
  • 116. Agenda 1. R 概論 2. 関数と変数が命 3. 外部データの読込 4. あっという間に作図 5. R で検定Saturday, May 19, 12
  • 117. Agenda 1. R 概論 2. 関数と変数が命 3. 外部データの読込 4. あっという間に作図 5. R で検定Saturday, May 19, 12
  • 118. データを集めたら 数値要約だけでなく データの視覚化も必要Saturday, May 19, 12
  • 119. というわけで 作図のお時間ですSaturday, May 19, 12
  • 120. 基本的な作図手順 1. 変数に値を代入する 2. 作図用の関数を使って 処理するSaturday, May 19, 12
  • 121. たった2段階です Excel や SPSS と 来たら... orzSaturday, May 19, 12
  • 122. まずはヒストグラム 【事例】 年齢のヒストグラムを 作成するSaturday, May 19, 12
  • 123. まずはヒストグラム > age <- c(18, 23, 14, 19, 21, 29, 22, 21, 23, 19, 20, 20, 26, 18, 14, 6, 8, 16, 23, 20) > hist(age)Saturday, May 19, 12
  • 124. 次は散布図 【事例】 英語の試験と 英作文の語数の 相関を見るSaturday, May 19, 12
  • 125. 続いて散布図 > score <- c(60, 50, 72, 43, 50, 55, 43, 50, 85, 40) > words <- c(340, 190, 465, 170, 130, 225,140, 310, 580, 120) > plot(score,words)Saturday, May 19, 12
  • 126. 続いて箱ひげ図 【事例】 大学生1年生と 高校1年生が書いた 作文の語数の「幅」を 比較するSaturday, May 19, 12
  • 127. 続いて箱ひげ図 > high <- c(350, 285, 315, 340, 210, 185, 120, 740, 425, 155) > coll <- c(365, 570, 645, 540, 645, 665, 880, 550, 410, 585) > boxplot(high, coll, names=c("High", "Coll"))Saturday, May 19, 12
  • 128. 今度は折れ線グラフ > x <- rnorm(10) # 平均0,分散1の正規分布の乱数で,10要素のベクトル > plot(x, type=”l”) # 引数 type を l にして折れ線グラフにSaturday, May 19, 12
  • 129. 最後は棒グラフ (1) > barplot(1:10) # 10本並んだ棒グラフ > barplot(1:10, col=rainbow(5)) # 引数 col を rainbow(5) にして5色使用 > barplot(1:10, col=rainbow(5), horiz=T) # 引数 horiz を T にして水平に並べるSaturday, May 19, 12
  • 130. 最後は棒グラフ (2) > barplot(1:5, col=rainbow(5), horiz=T, names=c("s1", "s2", "s3", "s4", "s5"), main="SAMPLE") # 5本並んだ棒グラフ。項目名やタイトルを追記。Saturday, May 19, 12
  • 131. グラフの保存方法 > pdf() # pdf デバイスを開く() > plot(1:10) # プロット → Rplots.pdf に出力 > dev.off() # デバイスを閉じる ★慣れないうちは画面上のメニューから選ぶのが無難Saturday, May 19, 12
  • 132. ちなみに... • フォント設定の確認 • 使用フォントの指定Saturday, May 19, 12
  • 133. 初期設定は $sans > sample <- c(1:10) > plot(sample) # $sans適用 > plot(sample, family="serif")Saturday, May 19, 12
  • 134. 日本語フォントの指定 (Win) > windowsFonts(JP1=windowsFont("MS Gothic"), JP2=windowsFont("MS Mincho")) #それぞれのフォントにニックネームをつけてあげる > sample <- c(1:10) > plot(sample, family="JP1", main="サンプルの図です") > plot(sample, family="JP2", main="サンプルの図です")Saturday, May 19, 12
  • 135. 日本語フォントの指定 (Mac) > par(family="HiraKakuPro-W3")  # ヒラギノフォントを使用 > sample <- c(1:10) > plot(sample, main="サンプルの図です")Saturday, May 19, 12
  • 136. 日本語フォントの指定 (Mac) > quartzFonts(hira = quartzFont(rep("HiraKakuPro-W3",4))) # 面倒でミスりやすいので,par(family=”xxx”) の方が楽Saturday, May 19, 12
  • 137. フォント関連参考URL • http://d.hatena.ne.jp/sakaue/20111220 • http://phi.med.gunma-u.ac.jp/swtips/R.html • http://cwoweb2.bai.ne.jp/~jgb11101/files/log.htmlSaturday, May 19, 12
  • 138. 作図手順のまとめ 1. 変数に値を代入する 2. 作図用の関数を使って処理する 3. 形式を指定して保存 +人に伝承(twitter, FB)Saturday, May 19, 12
  • 139. 手軽に美しく 作図できる    を 使えるようになれば Excel におさらば! “y2.d175 | Lasershow! Relax!” by B Rosen http://www.flickr.com/photos/rosengrant/4751386872/Saturday, May 19, 12
  • 140. Agenda 1. R 概論 2. 関数と変数が命 3. 外部データの読込 4. あっという間に作図 5. R で検定Saturday, May 19, 12
  • 141. Agenda 1. R 概論 2. 関数と変数が命 3. 外部データの読込 4. あっという間に作図 5. R で検定Saturday, May 19, 12
  • 142. を使う経緯 この世の様々な現象を 数値データ+検定 から捉えてみたいSaturday, May 19, 12
  • 143. 共分散分析 カイ二乗検定 パワーアナリシス 主成分分析 符号検定 因子分析 t 検定 分散分析 マクマネー検定 クラスカル・ウォリス検定 判別分析Saturday, May 19, 12
  • 144. で「t 検定」Saturday, May 19, 12
  • 145. 検定の前に仮説を設ける • 帰無仮説 H0:「差はない」「効果はない」 • 対立仮説 H1:「差がある」「効果がある」 • H0が正しいという前提で,検定統計量 (t, χ2, F ) を求める • 検定統計量が極端で滅多に得られないような値となれば, 帰無仮説を棄却し,対立仮説を採択するSaturday, May 19, 12
  • 146. t 検定 • 2つのグループの平均値の差の検定 するのに使う手法 • R では,t.test() であっさりと実行Saturday, May 19, 12
  • 147. t 検定 • (例)英語の好きな組と嫌いな組が受けたテストの 平均値に差があるかどうか > like <- c(6,10,6,10,7,8,7,9,10,4) > dislike <- c(3,5,6,4,4,8,4,5,4,7) > t.test(like,dislike,var.equal=TRUE)Saturday, May 19, 12
  • 148. t 検定 > t.test(like,dislike,var.equal=TRUE) Two Sample t-test data: like and dislike t = 3.3041, df = 18, p-value = 0.003946 alternative hypothesis: true difference in means is not equal to 0 # 両側検定 95 percent confidence interval: # 信頼区間 0.9831754 4.4168246 sample estimates: mean of x mean of y 7.7 5.0Saturday, May 19, 12
  • 149. t 検定の前に... “等分散であるかどうかを確かめてから,普通の t 検定を使うか,Welch の方法による t 検定にす るかを決めるというのは,よくない。最初から Welch の方法による t 検定を使えばよい。” http://aoki2.si.gunma-u.ac.jp/lecture/Average/bunsan1.htmlSaturday, May 19, 12
  • 150. 問答無用にWelch ! よく分からないが(解説希望), 1つのこと(有意差の有無)を知りたい のに,予備の検定を含めた2段階の検定 を行うのが「気持ち悪い」らしい。Saturday, May 19, 12
  • 151. ソース! ソース! ―(等分散の検定はせず)最初から Welch で行け― • http://oku.edu.mie-u.ac.jp/~okumura/blog/node/2262 • http://aoki2.si.gunma-u.ac.jp/lecture/BF/index.html • Donald W. Zimmerman, ``Some properties of preliminary tests of equality of variances in the two-sample location problem, The Journal of General Psychology, Vol.123, pp. 217-231 (1996) • The unequal variance t-test is an underused alternative to Students t-test and the Mann-Whitney U test -- Ruxton 17 (4): 688 -- Behavioral Ecology • 馬車馬のように: [統計]Mann-WhitneyのU検定と不等分散(http://qdai.way- nifty.com/qjes/2005/02/mannwhitneyu.htmlSaturday, May 19, 12
  • 152. という訳で... > t.test(like,dislike,var.equal=FALSE) Welch Two Sample t-test data: like and dislike t = 3.3041, df = 16.795, p-value = 0.004249 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: 0.9743014 4.4256986 sample estimates: mean of x mean of y 7.7 5.0Saturday, May 19, 12
  • 153. ところで t 検定の t は何なのかと... • t 分布の t なんだけど... • ゴセットの発表した統計量(Student の t 分布)に, (論敵の)フィッシャーが t という記号を充てた • 別に特別な意味は無く,論文中の標本分散s^2に対する 式だったことから,s の次の t を使ったらしい... • 「ウィリアム・ゴセット」http://ja.wikipedia.org/wiki/%E3%82%A6%E3%82%A3%E3%83%AA %E3%82%A2%E3%83%A0%E3%83%BB%E3%82%B4%E3%82%BB%E3%83%83%E3%83%88 • 「自由度」http://ja.wikipedia.org/wiki/%E8%87%AA%E7%94%B1%E5%BA%A6 • http://mat.isc.chubu.ac.jp/fpr/fpr1997/0119.html • http://www.pol.geophys.tohoku.ac.jp/~hanawa/ori/ori/054.htmlSaturday, May 19, 12
  • 154. 共分散分析 カイ二乗検定 パワーアナリシス 主成分分析 符号検定 因子分析 t 検定 分散分析 マクマネー検定 クラスカル・ウォリス検定 判別分析Saturday, May 19, 12
  • 155. で「カイ二乗検定」Saturday, May 19, 12
  • 156. カイ二乗検定 • 独立性の検定のために使う(連関の有無) • (例)数学が好き嫌いと統計の好き嫌いの間に有 意な連関があるか • (例)あるコーパス中の表現Aと表現Bの頻度の差 • ざっくり言えば,期待度数と観測度数のズレ が偶然出ちゃったかどうかを調べるSaturday, May 19, 12
  • 157. 事例: 接続詞 “しかし” の生起位置の比較 注)実は,英語の “however” の例 文頭 文中 文末 合計 頻度 109 347 8 493 [文頭] しかし, .... [文中] ..., しかし, .... [文末] ..., しかし.Saturday, May 19, 12
  • 158. 生起位置の比較のためにカイ二乗検定を実行 > freq <- c(109,347,8) > chisq.test(freq,correct=FALSE) Chi-squared test for given probabilities data: freq X-squared = 391.7371, df = 2, p-value < 2.2e-16 # 手作業なら,カイ二乗分布表の自由度2のところを確認する # http://homepage2.nifty.com/nandemoarchive/toukei_kiso/t_F_chi.htmSaturday, May 19, 12
  • 159. 共分散分析 カイ二乗検定 パワーアナリシス 主成分分析 符号検定 因子分析 t 検定 分散分析 マクマネー検定 クラスカル・ウォリス検定 判別分析Saturday, May 19, 12
  • 160. で「分散分析」Saturday, May 19, 12
  • 161. 分散分析 • 3つ以上の平均値の差の検定のために使う • t 検定は使えない:検定の多重性の問題あり=本当 は差がないのに,差があると判断してしまう確率 (第1種の誤り)が上がってしまう • ANOVA(アノーバ、ANalysis Of VAriance) • F という検定統計量を利用(F 分布)Saturday, May 19, 12
  • 162. 分散分析 Aクラス Bクラス Cクラス 10 9 6 8 7 4 9 4 3 6 5 9 9 2 2 5 8 6 7 4 2 9 2 4 8 8 3 10 4 9Saturday, May 19, 12
  • 163. 分散分析 > test <- read.csv("demo.csv", head=T) > anova(lm(Class ~ Score, data=test)) Analysis of Variance Table Response: Class Df Sum Sq Mean Sq F value Pr(>F) Score 1 5.2389 5.2389 9.9376 0.00384 ** Residuals 28 14.7611 0.5272 --- Signif. codes: 0 *** 0.001 ** 0.01 * 0.05 . 0.1 1Saturday, May 19, 12
  • 164. 分散分析には 「ANOVA君」を使おう http://www11.atpages.jp/~riseki/pukiwikiplus/ index.php?ANOVA%B7%AFSaturday, May 19, 12
  • 165. で検定のまとめ • 差がありそうかなさそうかを判断するため に各種検定を行う • 平均値の差の検定:t 検定と分散分析 • 独立性の検定  :カイ二乗検定 • 数行のコマンドであっさり検定! • データ準備の手間は多少かかるかも...Saturday, May 19, 12
  • 166. を使って この世の現象を 数値データ+検定 から捉えてみよう!Saturday, May 19, 12
  • 167. 参考文献Saturday, May 19, 12
  • 168. 参考文献Saturday, May 19, 12
  • 169. 参考文献(続)Saturday, May 19, 12
  • 170. 参考文献(続) 2,940円 1,785円 3,780円Saturday, May 19, 12
  • 171. One more thing...Saturday, May 19, 12
  • 172. 舟尾暢男氏による参考資料 第 22 回日本疫学会総会第19回疫学セミナー 「統計解析ソフトRの活用」 統計解析ソフト R の活用 ∼ R 入門& R でデータハンドリング∼ http://www.occn.zaq.ne.jp/cuhxr802/epi_20120126.pdfSaturday, May 19, 12