HiRoshima.R #1 1-2

79
Hi oshima. 第1部:入門者講習 @sakaue 2011-06-17 HiRoshima.R #1@ 1 Saturday, June 18, 2011

Transcript of HiRoshima.R #1 1-2

Page 1: HiRoshima.R #1 1-2

Hi oshima.

広島を中心とした統計解析環境 R に関する勉強会

第1部:入門者講習

@sakaue

2011-06-17 HiRoshima.R #1@

1Saturday, June 18, 2011

Page 2: HiRoshima.R #1 1-2

Agenda

1. R 概論2. 関数と変数が命3. あっという間に作図

2Saturday, June 18, 2011

Page 3: HiRoshima.R #1 1-2

Agenda

1. R 概論2. 関数と変数が命3. あっという間に作図

3Saturday, June 18, 2011

Page 4: HiRoshima.R #1 1-2

 とは何か

• 統計処理を目的とするプログラミング言語

• 作者:Ross Ihaka & Robert Gentleman (R & R)

• 無償+オープンソースのソフトウェア

4Saturday, June 18, 2011

Page 5: HiRoshima.R #1 1-2

要するに統計ソフト

5Saturday, June 18, 2011

Page 6: HiRoshima.R #1 1-2

 の何が良いのか

•無償(IBM SPSS Statistics は10万弱)

•統計処理の種類が豊富•グラフィックスが美しい

6Saturday, June 18, 2011

Page 7: HiRoshima.R #1 1-2

 の弱点

•文字ベースの操作• プログラムを組む感覚を養成

•多方面の知識が必要• 英語+統計+PCに関する知識

7Saturday, June 18, 2011

Page 8: HiRoshima.R #1 1-2

Excel や SPSS は...

•高価(IBM SPSS Statistics は10万弱)

•処理が信頼できず • Excel のひどい話(青木先生@群馬大)

•グラフィックスが美しくない8Saturday, June 18, 2011

Page 9: HiRoshima.R #1 1-2

ExcelSPSS

9Saturday, June 18, 2011

Page 10: HiRoshima.R #1 1-2

 の基本操作—Install / Update / Uninstall—

10Saturday, June 18, 2011

Page 11: HiRoshima.R #1 1-2

 のインストール

1. http://www.r-project.org/ にアクセス

2. “download R” をクリック

3. JAPAN の中から、どれか1つを選ぶ

4. 使っている OS のリンクをクリック

11Saturday, June 18, 2011

Page 12: HiRoshima.R #1 1-2

 のインストール• Windows: http://cran.md.tsukuba.ac.jp/bin/windows/base/

•「Download R 2.13.0 for Windows」というリンクをクリックしてダウンロード

• Mac OS X: http://cran.md.tsukuba.ac.jp/bin/macosx/

•「R-2.13.0.pkg (latest version)」というリンクをクリックしてダウンロード

12Saturday, June 18, 2011

Page 13: HiRoshima.R #1 1-2

13Saturday, June 18, 2011

Page 14: HiRoshima.R #1 1-2

14Saturday, June 18, 2011

Page 15: HiRoshima.R #1 1-2

15Saturday, June 18, 2011

Page 16: HiRoshima.R #1 1-2

16Saturday, June 18, 2011

Page 17: HiRoshima.R #1 1-2

17Saturday, June 18, 2011

Page 18: HiRoshima.R #1 1-2

18Saturday, June 18, 2011

Page 19: HiRoshima.R #1 1-2

19Saturday, June 18, 2011

Page 20: HiRoshima.R #1 1-2

20Saturday, June 18, 2011

Page 21: HiRoshima.R #1 1-2

21Saturday, June 18, 2011

Page 22: HiRoshima.R #1 1-2

22Saturday, June 18, 2011

Page 23: HiRoshima.R #1 1-2

23Saturday, June 18, 2011

Page 24: HiRoshima.R #1 1-2

24Saturday, June 18, 2011

Page 25: HiRoshima.R #1 1-2

 のアップデート1. http://www.r-project.org/ にアクセス

2. 自分が使っているバージョンより新しいものが出ているか確認

3. 新規にインストール用ファイルをダウンロードの上、インストール

25Saturday, June 18, 2011

Page 26: HiRoshima.R #1 1-2

 のアンインストール• Windows

• START → Program → R → Uninstall R

• Mac OS X・/Applications 内の R アイコンと /Library/Frameworks 内の R. framework

 をゴミ箱に入れる

26Saturday, June 18, 2011

Page 27: HiRoshima.R #1 1-2

 の起動• Windows

• START → Program → R → R 2.13.0

• Mac OS X・/Applications 内の R アイコンをクリック

R の「コンソール」が表示されることを確認

27Saturday, June 18, 2011

Page 28: HiRoshima.R #1 1-2

 の終了

• Windowsも Mac OS X も1.「q()」と入力2.今は作業スペースの保存をしない3.ウィンドウが消えて、R終了

28Saturday, June 18, 2011

Page 29: HiRoshima.R #1 1-2

 の環境設定

• 細かいことは省略

• 日本語の文字化けが起こったら(Win)

• [編集]→[GUI プリファレンス]を選択• Font を [MS Mincho] に設定

29Saturday, June 18, 2011

Page 30: HiRoshima.R #1 1-2

 で困ったら• まずは、help(XXX) !!

• seekR (http://seekr.jp/)

• R SEEK (http://www.rseek.org/)

• RjpWiki (http://www.okada.jp.org/RWiki/)

• R による統計処理 (http://aoki2.si.gunma-u.ac.jp/R/)

• R-Tips (http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html)

30Saturday, June 18, 2011

Page 31: HiRoshima.R #1 1-2

 概論まとめ

•R は統計ソフト•無償+何でも統計+美しい作図

•起動はクリック、終了は q()

•困ったら help(XXX) !!

31Saturday, June 18, 2011

Page 32: HiRoshima.R #1 1-2

ExcelSPSS

32Saturday, June 18, 2011

Page 33: HiRoshima.R #1 1-2

Agenda

1. R 概論2. 関数と変数が命3. あっという間に作図

33Saturday, June 18, 2011

Page 34: HiRoshima.R #1 1-2

Agenda

1. R 概論2. 関数と変数が命3. あっという間に作図

34Saturday, June 18, 2011

Page 35: HiRoshima.R #1 1-2

前置きが長くなりましたがどんどん実行しましょう

35Saturday, June 18, 2011

Page 36: HiRoshima.R #1 1-2

まずは四則演算•式を入力し [Enter] を押す• > 3+5 [Enter]

• > 10-3 [Enter]

• > 2*3 [Enter]

• > 100/20 [Enter]

• > (12 + 34 -56) * 78 / 90 [Enter]

36Saturday, June 18, 2011

Page 37: HiRoshima.R #1 1-2

もうちょっと複雑に

•次の違いは?

•> 100^1/2

•> 100^(1/2)

37Saturday, June 18, 2011

Page 38: HiRoshima.R #1 1-2

いままでのものは単なる計算式でしたが

38Saturday, June 18, 2011

Page 39: HiRoshima.R #1 1-2

Rといえば

関数が命

39Saturday, June 18, 2011

Page 40: HiRoshima.R #1 1-2

関数とは指定した値に対して何らかの処理をして結果を返すもの

40Saturday, June 18, 2011

Page 41: HiRoshima.R #1 1-2

何言ってんの?

http://www.flickr.com/photos/fmgbain/4382010455/“I don't know !” by fmgbain

41Saturday, June 18, 2011

Page 42: HiRoshima.R #1 1-2

なにはともあれ実行してみましょう

42Saturday, June 18, 2011

Page 43: HiRoshima.R #1 1-2

sqrt():平方根•> sqrt(2)

•> sqrt(144)

•> sqrt(104976)

• [応用] 2の立方根はどう求める?

• 「2の3分の1乗」と考える• > 2^(1/3)

43Saturday, June 18, 2011

Page 44: HiRoshima.R #1 1-2

「関数(値)」が命

•R には多数の関数がある

•q() や help(xxx) も関数

•必要な関数をしつこく実行!44Saturday, June 18, 2011

Page 45: HiRoshima.R #1 1-2

Rといえば

変数も命

45Saturday, June 18, 2011

Page 46: HiRoshima.R #1 1-2

変数とは1つ以上の値をまとめていれておく「箱」のこと

46Saturday, June 18, 2011

Page 47: HiRoshima.R #1 1-2

Rではベクトルとも呼ばれ複数の値を1つにまとめたものを指す

47Saturday, June 18, 2011

Page 48: HiRoshima.R #1 1-2

統計処理などを行うには複数の値をまとめて扱う

ことが必要でそれを使い回すために

変数を使う48Saturday, June 18, 2011

Page 49: HiRoshima.R #1 1-2

ちなみに変数に数値を入れることを

「代入」といいます49Saturday, June 18, 2011

Page 50: HiRoshima.R #1 1-2

また何言ってんの?

http://www.flickr.com/photos/fmgbain/4382010455/“I don't know !” by fmgbain

50Saturday, June 18, 2011

Page 51: HiRoshima.R #1 1-2

なにはともあれ実行してみましょう

51Saturday, June 18, 2011

Page 52: HiRoshima.R #1 1-2

変数の名前は “hako”

•> hako <- c(1,2,3,4,5)•> hako•c() 関数:concatenate/combine

•値を1つにまとめる関数52Saturday, June 18, 2011

Page 53: HiRoshima.R #1 1-2

c()関数の “<-” は何?

hako <- c(1,2,3,4,5) の「 <-」は左向きの矢印を表現

53Saturday, June 18, 2011

Page 54: HiRoshima.R #1 1-2

現在、hako という名前の「変数」の中に

1から5までの5つの数字がまとめて入っている状態

54Saturday, June 18, 2011

Page 55: HiRoshima.R #1 1-2

では使い回してみましょう

55Saturday, June 18, 2011

Page 56: HiRoshima.R #1 1-2

以下の関数を実行

•> sqrt(hako)

•> log(hako)

56Saturday, June 18, 2011

Page 57: HiRoshima.R #1 1-2

もし変数がなかったら何度も関数を

繰り返す羽目になるsqrt(1), sqrt(2) ... sqrt(5)log(1), log (2) ... log (5)

57Saturday, June 18, 2011

Page 58: HiRoshima.R #1 1-2

一括処理のために変数(ベクトル)の利用は不可欠

58Saturday, June 18, 2011

Page 59: HiRoshima.R #1 1-2

では変数をもっと使い回してみましょう

59Saturday, June 18, 2011

Page 60: HiRoshima.R #1 1-2

以下の関数で実行!

•基本統計量を求める:summary()

•度数分布表を作る:table()

•合計する:sum()

•データの個数を求める:length()

60Saturday, June 18, 2011

Page 61: HiRoshima.R #1 1-2

続いてこちらも実行!

• 平均値を求める:mean()

• 最大値と最小値を求める:max(), min()

• 中央値を求める:median()

• 標準偏差を求める:sd()

61Saturday, June 18, 2011

Page 62: HiRoshima.R #1 1-2

ここまでのまとめ

•Rは「関数」と「変数」が命•関数を使って数値を処理•q(), help(), sqrt(), log(), c()

•変数を使って一括処理!62Saturday, June 18, 2011

Page 63: HiRoshima.R #1 1-2

今日はメモを頼りに実行できれば OK

63Saturday, June 18, 2011

Page 64: HiRoshima.R #1 1-2

Agenda

1. R 概論2. 関数と変数が命3. あっという間に作図

64Saturday, June 18, 2011

Page 65: HiRoshima.R #1 1-2

Agenda

1. R 概論2. 関数と変数が命3. あっという間に作図

65Saturday, June 18, 2011

Page 66: HiRoshima.R #1 1-2

データを集めたら数値要約だけでなくデータの視覚化も必要

66Saturday, June 18, 2011

Page 67: HiRoshima.R #1 1-2

というわけで作図のお時間です

67Saturday, June 18, 2011

Page 68: HiRoshima.R #1 1-2

基本的な作図手順

1. 変数に値を代入する

2. 作図用の関数を使って処理する

68Saturday, June 18, 2011

Page 69: HiRoshima.R #1 1-2

たった2段階です

Excel や SPSS と来たら... orz

69Saturday, June 18, 2011

Page 70: HiRoshima.R #1 1-2

まずはヒストグラム

【事例】身長のヒストグラムを

作成する

70Saturday, June 18, 2011

Page 71: HiRoshima.R #1 1-2

まずはヒストグラム

> height <- c(160, 160, 160, 165, 170, 170, 170, 170, 175, 175, 180, 185, 185, 185, 190)

> hist(height)

71Saturday, June 18, 2011

Page 72: HiRoshima.R #1 1-2

次は散布図【事例】

TOEICスコアと英作文の語数の相関を見る

72Saturday, June 18, 2011

Page 73: HiRoshima.R #1 1-2

続いて散布図> score <- c(600, 500, 720, 430, 500, 550, 430, 500, 850, 400)

> words <- c(340, 190, 465, 170, 130, 225,140, 310, 580, 120)

> plot(score,words)

73Saturday, June 18, 2011

Page 74: HiRoshima.R #1 1-2

続いて箱ひげ図【事例】英語学習者と

英語母語話者が書いた英作文の語数の「幅」を

比較する74Saturday, June 18, 2011

Page 75: HiRoshima.R #1 1-2

続いて箱ひげ図> nns <- c(350, 285, 315, 340, 210, 185, 120, 740, 425, 155)

> ns <- c(365, 570, 645, 540, 645, 665, 880, 550, 410, 585)

> boxplot(nns,ns, names=c("NNS", "NS"))

75Saturday, June 18, 2011

Page 76: HiRoshima.R #1 1-2

最後は円グラフ【事例】

携帯電話の販売シェアを円グラフで示す

76Saturday, June 18, 2011

Page 77: HiRoshima.R #1 1-2

最後は円グラフ

> share <- c(32.4, 21.0, 8.3, 4.1, 3.6,30.5)

> names(share) <- c("NOKIA", "SAMSUNG", "LG", "Apple", "RIM", "Others")

> pie(share,main="Mobile Phone Market Share", clockwise=TRUE)

77Saturday, June 18, 2011

Page 78: HiRoshima.R #1 1-2

作図手順のまとめ

1. 変数に値を代入する

2. 作図用の関数を使って処理する

+人に伝承する

78Saturday, June 18, 2011

Page 79: HiRoshima.R #1 1-2

http://www.flickr.com/photos/rosengrant/4751386872/

手軽に美しく作図できるRを

使えるようになればExcel におさらば!

“y2.d175 | Lasershow! Relax!” by B Rosen

79Saturday, June 18, 2011