Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Yuya Matsumura
PDF, PPTX
1,718 views
2017年3月版データマエショリスト入門(誤植修正版)
https://www.slideshare.net/mattuyuya/20173-73273679 の誤植修正版
Technology
◦
Read more
5
Save
Share
Embed
Download
Download as PDF, PPTX
1
/ 53
2
/ 53
3
/ 53
4
/ 53
5
/ 53
6
/ 53
7
/ 53
8
/ 53
9
/ 53
10
/ 53
11
/ 53
12
/ 53
13
/ 53
14
/ 53
15
/ 53
16
/ 53
17
/ 53
18
/ 53
19
/ 53
20
/ 53
21
/ 53
22
/ 53
23
/ 53
24
/ 53
25
/ 53
26
/ 53
27
/ 53
28
/ 53
29
/ 53
30
/ 53
31
/ 53
32
/ 53
33
/ 53
34
/ 53
35
/ 53
36
/ 53
37
/ 53
38
/ 53
39
/ 53
40
/ 53
41
/ 53
42
/ 53
43
/ 53
44
/ 53
45
/ 53
46
/ 53
47
/ 53
48
/ 53
49
/ 53
50
/ 53
51
/ 53
52
/ 53
53
/ 53
More Related Content
PDF
2016年6月版データマエショリスト入門
by
Yuya Matsumura
PDF
10分で分かるr言語入門ver2.10 14 1101
by
Nobuaki Oshiro
PDF
R入門(dplyrでデータ加工)-TokyoR42
by
Atsushi Hayakawa
PPTX
Tokyo r47 beginner_2
by
Takashi Minoda
PDF
10分で分かるr言語入門ver2 upload用
by
Nobuaki Oshiro
PDF
10分で分かるr言語入門ver2.9 14 0920
by
Nobuaki Oshiro
PPTX
Tokyo r33 beginner
by
Takashi Minoda
PDF
Tokyor60 r data_science_part1
by
Yohei Sato
2016年6月版データマエショリスト入門
by
Yuya Matsumura
10分で分かるr言語入門ver2.10 14 1101
by
Nobuaki Oshiro
R入門(dplyrでデータ加工)-TokyoR42
by
Atsushi Hayakawa
Tokyo r47 beginner_2
by
Takashi Minoda
10分で分かるr言語入門ver2 upload用
by
Nobuaki Oshiro
10分で分かるr言語入門ver2.9 14 0920
by
Nobuaki Oshiro
Tokyo r33 beginner
by
Takashi Minoda
Tokyor60 r data_science_part1
by
Yohei Sato
What's hot
PDF
10分で分かるr言語入門ver2.15 15 1010
by
Nobuaki Oshiro
PDF
初心者のためのRとRStudio入門 vol.2
by
OWL.learn
PDF
R による文書分類入門
by
Takeshi Arabiki
PDF
[データマイニング+WEB勉強会][R勉強会] はじめてでもわかる 統計解析・データマイニング R言語入門
by
Koichi Hamada
PDF
rstanで個人のパラメーターを推定した話
by
Yuya Matsumura
PDF
HiroshimaR4_LT_sakaue
by
SAKAUE, Tatsuya
PDF
HiRoshimaR3_IntroR
by
SAKAUE, Tatsuya
PDF
Hiroshimar4_Rintro
by
SAKAUE, Tatsuya
PDF
Rによるデータ整形入門 Introduction to Data Transformation with R
by
Yukihiro NAKAJIMA
PDF
10分で分かるr言語入門ver2.14 15 0905
by
Nobuaki Oshiro
PDF
Tokyor36
by
TokorosawaYoshio
PPTX
Tokyo r38
by
Takashi Minoda
PPTX
Tokyo r50 beginner_2
by
Takashi Minoda
PPTX
Tokyo r28 1
by
Takashi Minoda
PDF
プログラマのための文書推薦入門
by
y-uti
PDF
HiroshimaR6_Introduction
by
SAKAUE, Tatsuya
PPTX
20161127 doradora09 japanr2016_lt
by
Nobuaki Oshiro
PDF
10分で分かるr言語入門ver2.5
by
Nobuaki Oshiro
PDF
JASELE2015-KumamotoWS
by
SAKAUE, Tatsuya
PDF
Yamadai.R チュートリアルセッション
by
考司 小杉
10分で分かるr言語入門ver2.15 15 1010
by
Nobuaki Oshiro
初心者のためのRとRStudio入門 vol.2
by
OWL.learn
R による文書分類入門
by
Takeshi Arabiki
[データマイニング+WEB勉強会][R勉強会] はじめてでもわかる 統計解析・データマイニング R言語入門
by
Koichi Hamada
rstanで個人のパラメーターを推定した話
by
Yuya Matsumura
HiroshimaR4_LT_sakaue
by
SAKAUE, Tatsuya
HiRoshimaR3_IntroR
by
SAKAUE, Tatsuya
Hiroshimar4_Rintro
by
SAKAUE, Tatsuya
Rによるデータ整形入門 Introduction to Data Transformation with R
by
Yukihiro NAKAJIMA
10分で分かるr言語入門ver2.14 15 0905
by
Nobuaki Oshiro
Tokyor36
by
TokorosawaYoshio
Tokyo r38
by
Takashi Minoda
Tokyo r50 beginner_2
by
Takashi Minoda
Tokyo r28 1
by
Takashi Minoda
プログラマのための文書推薦入門
by
y-uti
HiroshimaR6_Introduction
by
SAKAUE, Tatsuya
20161127 doradora09 japanr2016_lt
by
Nobuaki Oshiro
10分で分かるr言語入門ver2.5
by
Nobuaki Oshiro
JASELE2015-KumamotoWS
by
SAKAUE, Tatsuya
Yamadai.R チュートリアルセッション
by
考司 小杉
Similar to 2017年3月版データマエショリスト入門(誤植修正版)
PDF
2017年3月版データマエショリスト入門
by
Yuya Matsumura
PPTX
for関数を使った繰り返し処理によるヒストグラムの一括出力
by
imuyaoti
PDF
ggplot2をつかってみよう
by
Hiroki Itô
PDF
LET2011: Rによる教育データ分析入門
by
Yuichiro Kobayashi
PDF
20140920 tokyo r43
by
Takashi Kitano
PPTX
Rプログラミング01 はじめの一歩
by
wada, kazumi
PDF
初心者講習会資料(Osaka.R#7)
by
Masahiro Hayashi
PDF
Rあんなときこんなとき(tokyo r#12)
by
Shintaro Fukushima
PDF
Yamadai.Rデモンストレーションセッション
by
考司 小杉
PDF
第1回R勉強会@東京
by
Yohei Sato
PDF
Introduction to R
by
Yukihiro NAKAJIMA
PPTX
Tokyo r45 beginner_2
by
Takashi Minoda
PPTX
Tokyo.r 女子資料
by
Maiko Fukata
PPT
K010 appstat201201
by
t2tarumi
PPTX
Tokyo r30 beginner
by
Takashi Minoda
PDF
初心者講習会資料(Osaka.R#5)
by
Masahiro Hayashi
PDF
Sendai r01 beginnerssession1
by
kotora_0507
PPTX
Tokyo.R #67 初心者セッション3
by
Nozomi Miyazaki
PPT
12-11-30 Kashiwa.R #5 初めてのR Rを始める前に知っておきたい10のこと
by
Haruka Ozaki
PDF
SappoRo.R #2 初心者向けWS資料
by
考司 小杉
2017年3月版データマエショリスト入門
by
Yuya Matsumura
for関数を使った繰り返し処理によるヒストグラムの一括出力
by
imuyaoti
ggplot2をつかってみよう
by
Hiroki Itô
LET2011: Rによる教育データ分析入門
by
Yuichiro Kobayashi
20140920 tokyo r43
by
Takashi Kitano
Rプログラミング01 はじめの一歩
by
wada, kazumi
初心者講習会資料(Osaka.R#7)
by
Masahiro Hayashi
Rあんなときこんなとき(tokyo r#12)
by
Shintaro Fukushima
Yamadai.Rデモンストレーションセッション
by
考司 小杉
第1回R勉強会@東京
by
Yohei Sato
Introduction to R
by
Yukihiro NAKAJIMA
Tokyo r45 beginner_2
by
Takashi Minoda
Tokyo.r 女子資料
by
Maiko Fukata
K010 appstat201201
by
t2tarumi
Tokyo r30 beginner
by
Takashi Minoda
初心者講習会資料(Osaka.R#5)
by
Masahiro Hayashi
Sendai r01 beginnerssession1
by
kotora_0507
Tokyo.R #67 初心者セッション3
by
Nozomi Miyazaki
12-11-30 Kashiwa.R #5 初めてのR Rを始める前に知っておきたい10のこと
by
Haruka Ozaki
SappoRo.R #2 初心者向けWS資料
by
考司 小杉
Recently uploaded
PDF
論文紹介:"MM-Tracker: Motion Mamba for UAV-platform Multiple Object Tracking", "M...
by
Toru Tamaki
PDF
論文紹介:"Reflexion: language agents with verbal reinforcement learning", "MA-LMM...
by
Toru Tamaki
PDF
論文紹介:Simultaneous Detection and Interaction Reasoning for Object-Centric Acti...
by
Toru Tamaki
PDF
手軽に広範囲でプライバシーを守りながら人数カウントできる ~ LoRaWAN AI人流カウンター PF52 日本語カタログ
by
CRI Japan, Inc.
PDF
歴史好きのスクラム話 JBUG名古屋#5 AI時代のデータドリブンなプロジェクト管理
by
Tatsuya Naiki
PDF
How We Operated Ticket-Driven Development in JIRA.pdf
by
akipii ogaoga
PDF
LoRaWAN小売業DXソリューション ~天候データと人流カウンターを利用して売り上げアップに貢献!
by
CRI Japan, Inc.
論文紹介:"MM-Tracker: Motion Mamba for UAV-platform Multiple Object Tracking", "M...
by
Toru Tamaki
論文紹介:"Reflexion: language agents with verbal reinforcement learning", "MA-LMM...
by
Toru Tamaki
論文紹介:Simultaneous Detection and Interaction Reasoning for Object-Centric Acti...
by
Toru Tamaki
手軽に広範囲でプライバシーを守りながら人数カウントできる ~ LoRaWAN AI人流カウンター PF52 日本語カタログ
by
CRI Japan, Inc.
歴史好きのスクラム話 JBUG名古屋#5 AI時代のデータドリブンなプロジェクト管理
by
Tatsuya Naiki
How We Operated Ticket-Driven Development in JIRA.pdf
by
akipii ogaoga
LoRaWAN小売業DXソリューション ~天候データと人流カウンターを利用して売り上げアップに貢献!
by
CRI Japan, Inc.
2017年3月版データマエショリスト入門(誤植修正版)
1.
2017年3月版 データ・マエショリスト入門 データの読み込みから{dplyr}の基本まで @y__mattu 12017/3/18 Tokyo.R #59
2.
自己紹介 • 松村優哉 @y__mattu •
ブログ:http://y-mattu.hatenablog.com/ • 大学4年生 • 分野:計量経済学、統計学(因果推論)、マーケティング • 言語:R, SAS • R歴:2年くらい • 近況:もうすぐ卒業&進学 22017/3/18 Tokyo.R #59
3.
この発表について • 2016/6/19 Tokyo.R
#54 初心者セッションの加筆修正版 2017/3/18 Tokyo.R #59 3
4.
アジェンダ • データの読み込み {readr}, {data.table},
{readxl}… • データの前処理 • {dplyr} • select, filter, mutate, group_by, arrange, 各種join • おまけ: {tidyverse} 2017/3/18 Tokyo.R #59 4
5.
データ分析の流れ 2017/3/18 Tokyo.R #59
5 データ取得 前処理 可視化・モデリング
6.
データ分析の流れ 2017/3/18 Tokyo.R #59
6 データ取得 前処理 可視化・モデリング Webから取得 (スクレイピング) 外部ファイル (csv, tsv, Excel,…) データベース (SQL)
7.
データ分析の流れ 2017/3/18 Tokyo.R #59
7 データ取得 前処理 可視化・モデリング 集計 マージ 型変換 絞り込み
8.
データ分析の流れ 2017/3/18 Tokyo.R #59 データ取得 前処理 可視化・モデリング 散布図 ヒストグラム 箱ひげ図 回帰分析 (重回帰、ロジスティック、…) ランダムフォレスト サポートベクトルマシン 8
9.
今日扱うのはここ 2017/3/18 Tokyo.R #59
9 前処理 可視化・モデリング 集計 マージ 型変換 絞り込み データ取得 外部ファイル (csv, tsv, Excel,…)
10.
はじめに • ワーキングディレクトリの設定 • ライブラリに入っている関数の使い方 2017/3/18
Tokyo.R #59 10 setwd(“./TokyoR/59”) #ディレクトリの指定 #方法1 library(readr) dat <- read_csv(“hoge.csv”) 方法2 readr::read_csv (“hoge.csv”)
11.
データの読み込み(CSV) • パッケージを使わない場合 • 高速な読み込み1 •
高速な読み込み2 2017/3/18 Tokyo.R #59 11 dat <- read.csv(“sample.csv”, stringAsFactors = FALSE) library(readr) dat <- read_csv(“sample.csv”) library(data.table) dat <- fread(“sample.csv”, data.table = FALSE) data.tableではなくdata.frameとして扱いたい場合は追加 おまじない
12.
データの読み込み速度比較 2017/3/18 Tokyo.R #59
12 csvファイル(log.csv) 約500MB 約350万行×5列の簡単なログデータ 検証環境 Mac OS 10.11.5 Corei7 メモリ16GB R 3.3.3
13.
データの読み込み速度比較 2017/3/18 Tokyo.R #59
13 > system.time(csv1 <- read.csv(“log.csv")) # ユーザ システム 経過 # 59.801 1.337 63.681 実行時間を計測 > system.time(csv2 <- readr::read_csv(“log.csv")) # ユーザ システム 経過 # 5.005 0.527 7.732 > system.time(csv3 <- data.table::fread(“log.csv")) # ユーザ システム 経過 # 3.502 0.425 6.965
14.
データの読み込み(TSV) • パッケージを使わない場合 • {readr} •
{data.table} 2017/3/18 Tokyo.R #59 14 dat <- read.delim(“sample.tsv”, stringAsFactors = FALSE) dat <- readr::read_tsv(“sample.tsv”) dat <- data.table::fread(“sample.tsv”, data.table = FALSE)
15.
データの読み込み(その他の区切り値) • パッケージを使わない場合 • {readr} •
{data.table} 2017/3/18 Tokyo.R #59 15 dat <- read.table(“sample.tsv”, stringAsFactors = FALSE, sep = “|”) dat <- readr::read_delim(“sample.tsv”, “|”) dat <- data.table::fread(“sample.tsv”)
16.
データの読み込み(Excel) • Excelを読み込めるパッケージ {xlsx}, {gdata},
{XLConnect}, {openxlsx}, {redxl} 爆速、かつ文字コードや日付の処理も完璧にやってくれる 2017/3/18 Tokyo.R #59 16 dat <- readxl::read_excel(“sample.xlsx”, sheet = “シート名”) #シート名は番号でもOK
17.
データの読み込み(その他拡張子) • SAS(sas7bdat)、STATA()、SPSS(sav)形式のファイル →{haven}パッケージで読み込み 2017/3/18 Tokyo.R
#59 17 dat <- haven::read_sas(“sample.sas7bda”)
18.
コマンドとかオプションとかメンドイ… • RStudioのGUI読み込み 2017/3/18 Tokyo.R
#59 18 Import Dataset で形式を選択
19.
2017/3/18 Tokyo.R #59
19 読み込みのコマンドもわかる 読み込んだときの様子がプレビューできる 区切り値や欠損値の設定も可能 クリックでファイル選択
20.
エンコーディングを指定したい • Windowsの文字コードはShift-JIS(CP932) • Macの文字コードはUTF8 •
Windowsで作られた(日本語を含む)ファイルをMacで読む ときはEncoding=“CP932” • Macで作られた(日本語を含む)ファイルをWindowsで読む ときはEncoding=“UTF8” 2017/3/18 Tokyo.R #59 20
21.
エンコーディング(例:CSVをCP932で) • パッケージを使わない場合 • {readr} •
{data.table} 2017/3/18 Tokyo.R #59 21 dat <- read.csv(“sample.csv”, strringAsFactors = FALSE, fileEncoding = “cp932”) dat <- readr::read_csv(“sample.csv”, locale=locale(encoding=“cp932")) dat <- data.table::fread(“sample.csv”, data.table = FALSE) %>% dplyr::mutate(VAR1 = iconv(VAR1, from = “UTF8", to = “CP932"))
22.
いよいよデータの前処理 • みんな大好きirisデータ • アヤメの3種(setosa,
vrisicolor, verginica)についてsepal (がく片)とpetal(花弁)の長さ(length)と幅(width)を 測ったデータセット 2017/3/18 Tokyo.R #59 22 Setosa Versicolor Verginica d <- iris
23.
データの構造を確認 • Rの標準関数 • {dplyr} 2017/3/18
Tokyo.R #59 23 > str(d) #'data.frame': 150 obs. of 5 variables: # $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ... # $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ... # $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ... # $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ... # $ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ... > dplyr::glimpse(d) # Observations: 150 # Variables: 5 # $ Sepal.Length (dbl) 5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3... # $ Sepal.Width (dbl) 3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0... # $ Petal.Length (dbl) 1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1... # $ Petal.Width (dbl) 0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1... # $ Species (fctr) setosa, setosa, setosa, setosa, setosa, setosa, setosa, setosa, set...
24.
データの構造を確認 • Rstudioだと 2017/3/18 Tokyo.R
#59 24
25.
データの構造を確認 • Rstudioだとstr()の中身が表示される 2017/3/18 Tokyo.R
#59 25
26.
データの構造を確認 • summary関数で要約統計量 2017/3/18 Tokyo.R
#59 26 > summary(iris) # Sepal.Length Sepal.Width Petal.Length Petal.Width Species # Min. :4.300 Min. :2.000 Min. :1.000 Min. :0.100 setosa :50 # 1st Qu.:5.100 1st Qu.:2.800 1st Qu.:1.600 1st Qu.:0.300 versicolor:50 # Median :5.800 Median :3.000 Median :4.350 Median :1.300 virginica :50 # Mean :5.843 Mean :3.057 Mean :3.758 Mean :1.199 # 3rd Qu.:6.400 3rd Qu.:3.300 3rd Qu.:5.100 3rd Qu.:1.800 # Max. :7.900 Max. :4.400 Max. :6.900 Max. :2.500
27.
集計してみる • Rの標準関数 2017/3/18 Tokyo.R
#59 27 > table(d$Species) # setosa versicolor virginica # 50 50 50
28.
集計してみる • {dplyr} 2017/3/18 Tokyo.R
#59 28 > group_by(d, Species) %>% + summarise(number = n()) #Source: local data frame [3 x 2] # Species number # (chr) (int) #1 setosa 50 #2 versicolor 50 #3 virginica 50 数えたい変数でグルーピング summarise関数 の中でカウント
29.
変数を追加したい1(例:花弁の縦横比) • Rの標準関数 または 2017/3/18 Tokyo.R
#59 29 transform(d, petal.w.l = d$Petal.Length / d$Petal.Width) d$petal.w.l = d$Petal.Length / d$Petal.Width
30.
変数を追加したい1(例:花弁の縦横比) • {dplyr} 2017/3/18 Tokyo.R
#59 30 dplyr::mutate(d, petal.w.l = Petal.Length / Petal.Width)
31.
ダミー変数も作れる 2017/3/18 Tokyo.R #59
31 species_dummy <- d %>% mutate(category = factor(Species, levels=c(“setosa”, “virginica”, “versicolor”), labels=LETTERS[1:3]))
32.
特定の列だけを取り出したい 例:Lengthにしか興味がないとき • パッケージを使わない 2017/3/18 Tokyo.R
#59 32 iris_length <- d[,c(1,3)] #列番号で直接指定
33.
特定の列だけを取り出したい 例:Lengthにしか興味がないとき • {dplyr} • 他にも、特定の変数を抜いたりもできる •
dplyr の select() の引数に指定可能なバリエーションまとめ 2017/3/18 Tokyo.R #59 33 iris_length <- select(d, Sepal.Length, Petal.Length) #列名を指 定 iris_length <- select(d, row_number(c(1,3))) #列番号を指定 iris_length <- select(d, contains(“length”, ignore.case = TRUE)) #”length”が含まれる列を選択 大文字、小文字を区別しない
34.
特定の行を取り出したい setosaのみ, 長さx以上, etc… •
Rの標準関数 2017/3/18 Tokyo.R #59 34 iris_setosa <- subset(d, Species == “setosa”) #条件を指定 iris5 <- iris5 <- subset(d, Sepal.Length > 5.0) #条件を指定
35.
特定の行を取り出したい setosaのみ, 長さx以上, etc… •
{dplyr} • 複数条件も可能 (参考文献「dplyrを使いこなす!基礎編」を参照) 2017/3/18 Tokyo.R #59 35 iris_setosa <- filter(d, Species == “setosa”) #条件を指定 iris5 <- filter(d, Sepal.Length > 5.0) #条件を指定
36.
ソートしたい • パッケージを使わない 2017/3/18 Tokyo.R
#59 36 length_asc <- d[order(d[, 2]), ] #2列目(Sepal.Width)基準に昇順 length_desc <- d[order(d[, 2], decreasing = T), ] #降順
37.
ソートしたい • {dplyr} 2017/3/18 Tokyo.R
#59 37 length_asc <- arrange(d, Sepal.Width) #Sepal.Width基準に昇順 length_desc <- arrange(d, descending(Sepal.Width)) #降順
38.
2017/3/18 Tokyo.R #59
38 いったんIrisから離れて…
39.
テーブルをマージしたい • 複数のテーブルの組み合わせ 2017/3/18 Tokyo.R
#59 39 引用:「dplyrを使いこなす!JOIN編」
40.
テーブルをマージしたい(inner_join) 2017/3/18 Tokyo.R #59
40 ab_inner<- inner_join(a, b, by = “x1”) 引用:「dplyrを使いこなす!JOIN編」
41.
テーブルをマージしたい(left_join) 2017/3/18 Tokyo.R #59
41 ab_left <- left_join(a, b, by = “x1”) 引用:「dplyrを使いこなす!JOIN編」
42.
テーブルをマージしたい(full_join) 2017/3/18 Tokyo.R #59
42 ab_full <- full_join(a, b, by = “x1”) 引用:「dplyrを使いこなす!JOIN編」
43.
テーブルをマージしたい(anti_join) 2017/3/18 Tokyo.R #59
43 ab_anti <- anti_join(a, b, by = “x1”) 引用:「dplyrを使いこなす!JOIN編」
44.
なぜ{dplyr}なのか • 速い • 依存パッケージ{magrittr}により%>%が使える •
%>%を使わないと 2017/3/18 Tokyo.R #59 44 d <- iris sepal_length <- select(d, contains(“Sepal”), Speceis) sepal_group <- group_by(sepal_length, Speceis) sepal_mean <- summarise(d_length, s.w.mean = mean(Sepal.Width), s.l.mean = mean(Sepal.Length)) sepal_mean
45.
なぜ{dplyr}なのか • 出力(種類ごとにがく片の平均値を算出) 2017/3/18 Tokyo.R
#59 45 > d # Source: local data frame [3 x 3] # # Species s.w.mean s.l.mean # (fctr) (dbl) (dbl) # 1 setosa 3.428 5.006 # 2 versicolor 2.770 5.936 # 3 virginica 2.974 6.588
46.
なぜ{dplyr}なのか • %>%を使うと 2017/3/18 Tokyo.R
#59 46 d <- iris %>% select(contains("Sepal"), Species) %>% group_by(Species)%>% summarise(s.w.mean = mean(Sepal.Width), s.l.mean = mean(Sepal.Length)) d
47.
データの前処理は他にも… • {dplyr} do, 各種Window関数 •
{tidyr} gather, spreadなど縦型と横型の変換について • {lubridate} 日付データの扱い • {purrr} リストデータの処理 2017/3/18 Tokyo.R #59 47
48.
もっと深く知りたい人は • Kazutan.R • データハンドリング、可視化、Rmarkdownを中心にコ マンドと用例で解説 2017/3/18
Tokyo.R #59 48
49.
おまけ:{tidyverse} • dplyr、tidyr、ggplot2など便利なパッケージが一気ににインス トールできる • そのうちのメインになるもの(readrやdplyrなどが一気に読み込 める) •
詳しくは俺たちのtidyverseはこれからだ!などを参照 2017/3/18 Tokyo.R #59 49 install.packages(“tidyverse”) library(tidyverse)
50.
結論 パッケージを使って 柔軟かつ高速な前処理を!! 2017/3/18 Tokyo.R #59
50
51.
その他参考文献 • データの読み込みについて 表形式ファイルの読み込み関数あれこれ: readrパッケージの導入を兼ねて 文字化けこわい、こわくない? readr,haven,readxl R:read.csv
/ read.tableで型と列名を指定して読み込む。 R で tsv ファイルの読み込み RでExcelのデータを読む方法 2017/3/18 Tokyo.R #59 51
52.
その他参考文献 • データの処理に関して dplyrを使いこなす!基礎編 dplyrを使いこなす!Window関数編 dplyrを使いこなす!JOIN編 Rの data.table
と data.frame を dplyr で区別なく扱う R dplyr, tidyr でのグルーピング/集約/変換処理まとめ {tidyr}でよく使う関数のメモ Hadley Ecosystem 2016 • その他 irisの正体 2017/3/18 Tokyo.R #59 52
53.
Enjoy ! 532017/3/18 Tokyo.R
#59
Download