10分で分かるr言語入門 短縮バージョン 15-0117_upload用
TRANSCRIPT
10分で分かる R言語入門 ver2.11
大城信晃 2015/01/15 TokyoR#451
3分バージョン
自己紹介• 名前:大城信晃
• Twitter:doradora09
• 職業:データマイニングエンジニア
• R:勉強中。
• 業務ではhadoop使ってます
• マイブーム:
• カクテル作り
• カメラ
! 2
これまで/現在の仕事•ショッピング関連
•商品/製品DB 保守開発
•データ分析関連
•行動ターゲティング
• DMP
•データを使って顧客像を探る 4
TokyoRでは
•第1回から主に運営側で参加
•初心者セッション
•懇親会(ピザ、お酒)
5
会場 & ビール 提供
6
VOYAGE GROUPさん ありがとうございます!
本セッションの役割
•「10分で分かるR言語入門」の要点を絞った紹介
•後のセッション理解のための準備
•資料は後ほど公開しますのでざっと眺めていただければと思います
7
アジェンダ
•自己紹介 • Rって何
• Rの使い方
• Rの資料(省略)
8
詳細•下記スライドをご参照下さい
• http://www.slideshare.net/akiaki5516/10rver210-14-1101
9
懇親会も是非 ご参加下さい!
10
アジェンダ
•自己紹介とお知らせ
•Rって何 • Rの使い方
11
R言語(アールげんご)は、オープンソースでフリーソフトウェアの統計解析向けプログラミング言語、及びその開発実行環境である。
Wikipediaより引用
12
特徴 価格 大規模データ 速度統計特化 無料 △
(メモリ依存)△
SAS/ SPSS 統計特化 数十万~ ○ ○
エクセル 直感的 1万~ × (約100万行)
×
C++ 高速だが 開発コスト高
無料~ 数万
実装次第 ◎
Python スクリプト 言語
無料 実装次第 ○
他言語との比較
13
こんな方におすすめ
•色々な統計手法を試してみたい方
•エクセルでは物足りない方
•まずは無料で始めてみたい方
14
アジェンダ
•自己紹介とお知らせ
• Rって何
•Rの使い方
15
Rの使い方•ベーシックなRコンソール (今回説明)
• 便利なRStudio (オススメ)
16
インストール
Windows http://cran.md.tsukuba.ac.jp/bin/windows/base/
Mac http://cran.md.tsukuba.ac.jp/
Linux http://cran.md.tsukuba.ac.jp/
17
Rコンソール起動
18
Rコンソール起動
ココに処理を 記述していく
19
処理の記述
3+5 = 8 10-7 = 3
20
処理
解析の流れデータ
レポート
変数配列行列
データフレーム
関数
パッケージ
自作関数
作図CSV21
ここでは• 変数:1種類の型の値を1つ入れる箱(スカラー)
• 配列:1種類の型の値を複数入れる箱(ベクトル)
• 行列:1種類の型の複数ベクトルをまとめて表現
• データフレーム:複数の型のベクトルをまとめて表現
22
=> データフレームが超大事
複数の型を持てる> sex <- c("F","F","M","M","M") #性別
> height <- c(158,162,177,173,166) #身長
> weight <- c(51,55,72,57,64) #体重
> ( x <- data.frame(SEX=sex, HEIGHT=height, WEIGHT=weight) )
SEX HEIGHT WEIGHT
1 F 158 51
2 F 162 55
3 M 177 72
4 M 173 57
5 M 166 64
データフレーム
23
複数の型を持てる> sex <- c("F","F","M","M","M") #性別
> height <- c(158,162,177,173,166) #身長
> weight <- c(51,55,72,57,64) #体重
> ( x <- data.frame(SEX=sex, HEIGHT=height, WEIGHT=weight) )
SEX HEIGHT WEIGHT
1 F 158 51
2 F 162 55
3 M 177 72
4 M 173 57
5 M 166 64
性別(文字列型) 身長、体重(数値型)
データフレーム
data.frame関数で セット
24
要素の指定> x$HEIGHT
[1] 158 162 177 173 166
!
> x$HEIGHT[1]
[1] 158
!
> x$HEIGHT[1:3]
[1] 158 162 177
$で 身長(HEIGHT) を全指定
データフレーム
身長1つめだけ
身長1-3番目
25
CSV
処理
解析の流れデータ
レポート
変数配列行列
関数
自作関数データフレーム
パッケージ
作図26
ここでは•組み込み関数:基本的な演算が可能
• CSV:read.csv関数でCSV形式のデータを読み込める
•自作関数:自身で関数を定義できる
27
=> read.csv系は便利
処理の呼び出し関数
目的 関数名と書式データの結合 C(データ)
合計 sum(データ)個数を求める length(データ)
平均 mean(データ)標準偏差 sd(データ)・・・ ・・・
28
関数CSV> hawks <- read.csv("hawks.csv")
!
> hawks
height salary
1 173 17000
2 178 14000
3 180 9000
CSV読み込み
29
関数CSV> hawks <- read.csv("hawks.csv")
!
> hawks
height salary
1 173 17000
2 178 14000
3 180 9000
read.csv関数に hawks.csvという CSVファイルを
渡して 変数に代入
CSV読み込み
30
CSV読み込み関数CSV> hawks <- read.csv("hawks.csv")
!
> hawks
height salary
1 173 17000
2 178 14000
3 180 9000
CSVファイルの 変数への 読み込みが 確認できる
31
補足:クリップボード関数
#windowsの場合!>hawks <- read.table("clipboard", header=TRUE,sep=’,’);!#macの場合!>hawks <- read.table(pipe("pbpaste"), header=TRUE,sep=’,’)!> hawks! height salary!1 173 17000!2 178 14000!3 180 9000!
クリップボードからも 読み込み可能
CSV
32
処理
解析の流れデータ
レポート
変数配列行列
関数
パッケージ
自作関数
作図CSVデータフレーム
33
ここでは•作図関数:可視化が可能
•パッケージ:CRANからダウンロードして利用する
34
=> パッケージ利用が超大事
関数をまとめたもの
•複数の関数をまとめたもの
•様々なパッケージがCRANというシステムにて無料公開されている
•自作のパッケージも公開できる
パッケージ
35
例
•作図パッケージggplot2を使えるようにする
36
> install.packages(“ggplot2”)
> library("ggplot2") CRANから パッケージ ダウンロード& インストール
外部パッケージパッケージ作図
パッケージを ロード
37
qplot(carat, price,
data = diamonds,
colour = clarity)
サンプルデータ diamonds
パッケージ作図
diamonds データの
carat, priceを 描画
38
補足2:関数調べ方関数CSV
> ?read.table
> ??read.table
>help(read.table)
! ヘルプを 呼び出すことが出来る
39
> ?read.table
> ??read.table
>help(read.table)
!
補足2:関数調べ方関数CSV
後半には 用例もあるので 参考に
example(‘関数名’)40
処理
まとめ:Rで一連の分析が可能
データ
レポート41
再掲:詳細•下記スライドをご参照下さい
• http://www.slideshare.net/akiaki5516/10rver210-14-1101
42
•ご清聴ありがとうございました!
43