HiroshimaR5_Intro
-
Upload
sakaue-tatsuya -
Category
Data & Analytics
-
view
572 -
download
0
Transcript of HiroshimaR5_Intro
阪 上 辰 也 @sakaue
ご挨拶:目的と活動内容
Agenda
1. 自己紹介
2. HiRoshima.R とは
3. お知らせとお願い
Agenda
1. 自己紹介
2. HiRoshima.R とは
3. お知らせとお願い
1. 自己紹介
•阪上 辰也 (SAKAUE, Tatsuya)
• 所属: 外国語教育研究センター
• Nagoya.R /SappoRo.R 元主催, HiRoshima.R 主催
• 詳しくは...
1. 自己紹介
Agenda
1. 自己紹介
2. HiRoshima.R とは
3. お知らせとお願い
Agenda
1. 自己紹介
2. HiRoshima.R とは
3. お知らせとお願い
2. HiRoshima.Rとは
• 広島・中国地域を中心とした R の勉強会
• 2-3ヶ月... いや半年に1度開催(目標)
• 過去の参加者 : 多くは大学・教育関係者
• 企業にお勤めの方も...
なぜ HiRoshima.R?
• R ユーザー(特に入門者)を増やしたい
• HiRoshima.R を入り口・足場に
• 悩める方はどうぞいらっしゃーい
なぜ HiRoshima.R?
•異分野交流(Lightning Talks)
• 人文科学・社会科学・自然科学の研究、一般企業それぞれで何してますか?
• 自分の活動・研究のヒントになるかも
HiRoshima.R で何をするか
•入門者・初心者向け • インストール,起動・終了
• データ処理,関数の利用法,作図
• 統計の基礎,検定
•中級+ 者向け(発表者募集中) • 統計の理論解説
• パッケージ利用
• 高度なグラフィックス作成
• シミュレーション・プログラミング
HiRoshima.R で何をするか
•今後も2部構成の予定
• 第1部:入門者講習
• 第2部:Lightning Talks
• 希望の部にご参加ください
HiRoshima.R で何をするか
Agenda
1. 自己紹介
2. HiRoshima.R とは
3. お知らせとお願い
Agenda
1. 自己紹介
2. HiRoshima.R とは
3. お知らせとお願い
•発表者になってください • 入門者講習の講師
• Lightning Talks
• ネタは R にかすれば何でもOK • 時間は5分から
3. お知らせとお願い
•フィードバックをください • blog / twitter 経由
• #HiRoshimaR / @sakaue
• 感想,要望,賞賛,批判
3. お知らせとお願い
•会場を貸してください • 東広島はちょっと不便
• 広島市内なら参加者増も期待
• 異分野交流をより盛んに
3. お知らせとお願い
one more thing…
2015-09-19 HiRoshima.R #5 @ Hiroshima University
入門者講習
Tweet Me!
#HiRoshimaR
Agenda1. R の基本操作 2. 関数と変数が命 3. 外部データの読込と作図 4. RStudio で快適操作 5. パッケージの利用
Agenda1. R の基本操作 2. 関数と変数が命 3. 外部データの読込と作図 4. RStudio で快適操作 5. パッケージの利用
とは何か• 統計処理を目的とするプログラミング言語
• 無償+オープンソースのソフトウェア
• 作者: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
要するに 統計ソフト
の何が良いのか
•無償(IBM SPSS Statistics は約10万円で保守なし...)
•統計処理の種類が豊富
•作図結果が美しい(簡素)
なぜ今 なのか
• 経費や研究費の節約
• 分析手法の明確化
• 可視化による傾向把握
の弱点• 文字入力による操作
• プログラムを組む感覚を養成
• 確実に伝わるという利点も
• 多方面の知識が必要 • 英語+統計+計算機
• 参考書籍がお高め...
モウダメダー
Excel や SPSS は...
•高価(気軽に使えない)
•処理が信頼できず • Excel 使うな(奥村先生@三重大)
•作図結果が美しくない
の基本操作 ‐Install / Update / Uninstall‐
1. http://www.r-project.org/ にアクセス
2. “download R” をクリック
3. JAPAN の中から1つを選ぶ
4. OS に応じたリンクをクリック
のインストール
のインストール
• Windows: : http://cran.ism.ac.jp/bin/windows/base/ •「Download R 3.2.1 for Windows」をクリック
• Mac OS X: http://cran.ism.ac.jp/bin/macosx/ •「R-3.2.1.pkg」をクリック
のアップデート1. http://www.r-project.org/ にアクセス
2. 自分が使っているバージョンより新しいものが出ているか確認
3. 新規にインストール用ファイルをダウンロードしてインストール
のアップデート• セキュリティ上の問題がない限りは,むやみに更新しない
• パッケージ(付加機能)の動作不良回避
• 新旧の共存は可能 • Windows/Mac: 別名でインストール • ただし何がどう共有されているかは不明
のアンインストール• Windows 7/8
• コンパネ→プログラムのアンインストール
• Mac OS X • /Applications にある アイコンと /Library の中の
Frameworks にある R. framework を削除(CleanApp 可)
の起動
• Windows 7/8/10 • START → Program → R → R 3.2.2 を選択
• Mac OS X • /Applications 内の をダブルクリック
「コンソール」の表示を確認
の終了
•コンソールに「q()」と入力 • 今は「作業スペース」は保存しない • ウィンドウが消えれば終了
で困ったら...
•まずは Web 検索! • 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
• 標準搭載の help(sth) でも確認可能
で困ったら...•参照資料は豊富にあります
• R オンラインガイド(山口大学教育学部教育心理学コース)
• R 言語入門(ドットインストール)
• はじめての「R」(林真広 氏)
• R による統計処理(青木繁伸先生@群馬大学)
• 最近は書籍も増えました
概論まとめ
• は統計ソフト
•無償+何でも統計+美しく作図
•困ったら Web 検索!!
Agenda1. R の基本操作 2. 関数と変数が命 3. 外部データの読込と作図 4. RStudio で快適操作 5. パッケージの利用
Agenda1. R の基本操作 2. 関数と変数が命 3. 外部データの読込と作図 4. RStudio で快適操作 5. パッケージの利用
といえば
関数 が命
関数とは 指定した値に対して 何らかの処理をして 結果を返すもの
sqrt():平方根
•> sqrt(2)
•> sqrt(144)
•> sqrt(104976)
「関数(値)」が命
• には多数の関数がある
• q() や help(sth) も関数
• 必要な関数をしつこく実行
といえば
変数 も命
変数とは 1つ以上の値を まとめていれておく「箱」のこと
では ベクトルとも呼ばれ 複数の値を1つに まとめたものを指す
統計処理などを行うには 複数の値をまとめて扱う
ことが必要で それを使い回すために
変数を使う
ちなみに 変数に数値を 入れることを
「代入」といいます
なにはともあれ 実行してみましょう
変数の名前は “hako”
•> hako <- c(1,2,3,4,5) •> hako
• c() 関数:combine (cf. https://twitter.com/#!/sakaue/status/193708048030760960) • 値を1つにまとめる関数 • 逆に書いても(一応)OK
c()関数の “<-” は何?
hako <- c(1,2,3,4,5) の “<-” は
左向きの矢印(←) を表現
(入れ替えても動きます)
コンソールで「+」が出たら...
• 入力中に誤って[Enter] を押すと,待機状態を示す「+」が出る
• [STOP] ボタンでキャンセル
• [Esc] キーでキャンセル
履歴機能と補完機能
•履歴: [↑][↓] の矢印キー
•補完: [Tab]キー
いま “hako” という名前の 「変数」の中に
1から5までの5つの数字が まとめて入っている状態
以下の関数を実行
•> sqrt(hako)
•> log(hako)
もし変数がなかったら 何度も関数を
繰り返す羽目になる sqrt(1), sqrt(2) ... sqrt(5) log(1), log (2) ... log (5)
一括処理のために 変数(ベクトル)の 利用は不可欠
ここまでのまとめ• は「関数」と「変数」が命
• 関数を使って数値を処理 • q(), help(), sqrt(), log(), c()
• 変数を使って一括処理!
覚える必要はなく メモ等を頼りに 実行できれば OK
Agenda1. R の基本操作 2. 関数と変数が命 3. 外部データの読込と作図 4. RStudio で快適操作 5. パッケージの利用
Agenda1. R の基本操作 2. 関数と変数が命 3. 外部データの読込と作図 4. RStudio で快適操作 5. パッケージの利用
Sub topics
1. 行列のおはなし
2. データフレーム
3. 外部データの読込
さきほど 一行で表せる数値を 扱いましたが
実際のデータは 複数行あるはず
例えば...
•身長と体重
•年齢と年収
•覚えた単語数とTOEIC スコア
表にすれば...身長 体重
A 180 75B 170 65C 165 60D 175 70E 190 80
複数の行や列で表されるデータを扱うために
Rでは「行列」を使う
行列とは
数値が縦横に並べられたもの
1 2 3
4 5 6
7 8 9
行
1 2 3
4 5 6
7 8 9
1 2 3
4 5 6
7 8 9
1 2 3
4 5 6
7 8 9
列
1 2 3
4 5 6
7 8 9
1 2 3
4 5 6
7 8 9
1 2 3
4 5 6
7 8 9
ひとまず 「行列」という存在を 知ってやってください
行列まとめ
• 横方向が行、縦方向が列
• デフォルトでの数値の並びに注意
• 必要な要素を適宜取り出して値を確認
Sub topics
1. 行列のおはなし
2. データフレーム
3. 外部データの読込
データフレームとは
• いろんなデータを突っ込んだもの
• いろんな=質的データ+量的データ
• 突っ込む=一緒に並んでいること
名前 血液型 身長 体重坂本 B 175 65
高橋 B 177 70
阿部 B 174 75
長野 A 179 70
松本 O 170 60
データフレームとは
データフレームとは
• Excel の WS とほぼ同じイメージ
• 既存データの読込>自力で作る
• data.frame() 関数が使える
1. 行列のおはなし
2. データフレーム
3. 外部データの読込
Sub topics
ここはトラブル多発地域です
うまくいかない時は まず説明をお聴きください
おそらく...
•Excel でデータ管理
•できればそのまま活かしたい
作業ディレクトリの設定
•作業ディレクトリとは...
•データを読み込む場所 •データを書き出す場所
作業ディレクトリの設定• Windows:ファイル → ディレクトリの変更
• “My Documents” にファイル移動
• Mac OS X:環境設定 → 一般(起動)
• ホームディレクトリにファイル移動
• Linux:up to you...
作業ディレクトリの設定• コンソールからの確認・設定も可能
• getwd()関数:現在の設定を確認
• > getwd()
• setwd()関数:現在の設定を変更 • > setwd("/Users/sakaue/Desktop/") • 実行注意!!
データの読込 その1
• read.csv() 関数
• CSV 形式のファイルを読み込む
• CSV: Comma Separated Value
1. hiro4.csv を作業ディレクトリへ移動
• XLS/XLSX 形式のものは保存時に変換 • CSV ファイルの文字コードは UTF-8 に
2. > test <- read.csv(choose.files(), header = TRUE) #Win
# test <- read.csv(file.choose(), header = TRUE) #Mac
3. > test [Enter] で中身を確認
データの読込 その1
CSV 変換なんて面倒... という方に
データの読込 その2
• read.delim() 関数
• 表形式のデータ読み込む
• delim: delimiter(区切り文字)
1. hiro5.xls を開いてマウスで範囲指定
2. > test2 <- read.delim("clipboard") で代入
3. > test2 [Enter] で中身を確認
データの読込 その2
Mac の場合: read.delim(pipe("pbpaste"))
読み込んだら関数で処理
> table(test[,3]) •度数分布を確認する
> mean(test[,3]) •平均値を求める
3列目対象
3列目対象
外部データの読込
• 作業ディレクトリの設定に注意
• CSV 形式に変換後,read.csv()関数で読込
• 必要な行 or 列を指定して処理
データを集めたら 数値要約だけでなく データの可視化も必要
というわけで 作図のお時間です
基本的な作図手順
1. 変数に値を代入
2. 作図用の関数で処理
たった2段階 Excel や SPSS ではこうはいかない
• ヒストグラム
• 散布図
• 棒グラフ
• 折れ線グラフ
• 箱ひげ図
作成できる図の種類
まずはヒストグラム
【事例】 得点のヒストグラムを
作成する
まずはヒストグラム
> pretest <- (test$Pre) > hist(pretest)
次は散布図【事例】
事前テストの得点と 事後テストの得点を 比較し,伸びを見る
続いて散布図> pretest <- (test$Pre) > posttest <- (test$Post) > plot(pretest, posttest) > plot(pretest,posttest, ylim=c(0,100),xlim=c(0,100))
続いて箱ひげ図【事例】
事前テストの得点と 事後テストの得点の <幅>を比較する
続いて箱ひげ図
> pretest <- (test$Pre) > posttest <- (test$Post) > boxplot(pretest, posttest, names=c("PRE", "POST"))
箱ひげ図
> boxplot(pretest, posttest, names=c("Pre", "Post"), horizontal=T)
箱ひげ図
> boxplot(pretest, posttest, names=c("Pre", "Post"), horizontal=T, ylim=c(0,100))
箱ひげ図
> boxplot(pretest, posttest, names=c("Pre", "Post"), horizontal=T, ylim=c(0,100), col="blue")
箱ひげ図
> boxplot(pretest, posttest, names=c("Pre", "Post"), horizontal=T, ylim=c(0,100), col="blue", xlab="SCORE", ylab="TEST", main="BOXPLOT")
作図手順のまとめ1. 変数に値を代入する
2. 作図用の関数を使って処理する
3. 形式を指定して保存
+人に伝承(twitter, FB)
Agenda1. R の基本操作 2. 関数と変数が命 3. 外部データの読込と作図 4. RStudio で快適操作 5. パッケージの利用
Agenda1. R の基本操作 2. 関数と変数が命 3. 外部データの読込と作図 4. RStudio で快適操作 5. パッケージの利用
RStudioとは?
• R を快適に使うための統合開発環境 (IDE)
• ひとつの画面に複数の情報を配置
• 面倒(そう)なことがすぐできて(・∀・)イイ!! • 関数等の入力支援(tab)
• 変数等の中身をすぐに確認(CLICK!)
• Markdown によるレポート作成(割愛…)
RStudio のインストール
(R そのものは事前のインストールが必要)
RStudio のインストール
RStudio のインストール
↓OS に応じてダウンロード
RStudio のインストール
コンソール
エディタ 変数・履歴
いろいろ
RStudio の起動直後
画面 できること
エディタ(左上) 関数などの入力・既存スクリプトを閲覧 Run でそのまま実行も可
コンソール(左下) 関数の実行・変数への代入など 素の R と同じ
変数・履歴(右上) 変数の中身や使用した関数を表示 ダブルクリックでコンソールに貼付
いろいろ(右下)ファイルの一覧表示 作図結果の表示 パッケージ管理
ひとつの画面ですべてのことを
なにはともあれ Project を作成
↓New Directory を選択
なにはともあれ Project を作成
↓Empty Project を選択
なにはともあれ Project を作成↓Directory name を入力し
その名をつけた Directoryをどこに作るか選択
ちなみに配置は変更可能Tools -> Global Options にある
Pane Layout で配置は変更可能
http://www.slideshare.net/TakashiYamane1/rstudio
時間がないので 山根さんの資料を見ましょう(HiRoshima.R #2 での資料。40K views!)
改訂版は Hijiyama.R #3 にて (11/28)
いろいろと手助けしてくれる
RStudio を使って
R に慣れていきましょう
Agenda1. R の基本操作 2. 関数と変数が命 3. 外部データの読込と作図 4. RStudio で快適操作 5. パッケージの利用
Agenda1. R の基本操作 2. 関数と変数が命 3. 外部データの読込と作図 4. RStudio で快適操作 5. パッケージの利用
Packageとは?
• ある処理・機能に特化したプログラム
• base(基本パッケージ)だけでも 1,000 以上
• 特殊な処理を行う際は,別の package を追加
• 言語処理に特化したものもある(ex. RMeCab)
可視化の発展編
violin plot と beeswarm
―分布をより分かりやすく捉えるために―
violin plot ≒ boxplot+hist
> install.packages("vioplot") > library("vioplot")
> vioplot(pretest,posttest, names=c("Pre","Post"))
boxplot + beeswarm
> install.packages("beeswarm") > library("beeswarm") > PrePost <- test[,c("Pre", “Post")] > boxplot(pretest, posttest, names=c("PRE", "POST"))
> beeswarm(PrePost, add=TRUE)
おわりに
のススメ
• すべての処理・分析が R のみで完結 • <-> Editor + Excel (+ UNIX) + R + なんやかんや
• プログラミングの基礎養成に有効
• --> Python, Perl, ... どこでも使える
• 作図が美しい(+Mac ならフォントも)
• Excel の作図は一般に (‘A`)ヴァ-
のススメ
参考文献
参考文献(続)