狠狠撸

狠狠撸Share a Scribd company logo
前処理のための前処理
シリーズ前処理 2015
@u_ribo
Tokyo.R#45 January 17, 2015
Tokyo.R
シリーズ前処理:
おさらい
? 前処理
【広義】手元にある観測データを、
意図する分析手法が適用できる形にまで
もっていく方法
?http://www.slideshare.net/dichika/maeshori-missing
? 解析時間のほとんどは前処理
25
50
75
0/100
effort
""
time
Analysis
Manipulation
?Dasu and Johnson 2003.
Exploratory Data Mining and Data Cleaning. Wiley
[1] “無駄” “無駄” “無駄” “無駄” “無駄” “無駄”
“無駄” “無駄” [9] “無駄” “無駄” “無駄” “無駄”
“無駄” “無駄” “無駄” “無駄” [17] “無駄” “無駄”
“無駄” “無駄” “無駄” “無駄” “無駄” “無駄” [25]
“無駄” “無駄” “無駄” “無駄” “無駄” “無駄” “無
駄” “無駄” [33] “無駄” “無駄” “無駄” “無駄”
“無駄” “無駄” “無駄” “無駄” [41] “無駄” “無駄”
“無駄” “無駄” “無駄” “無駄” “無駄” “無駄” [49]
“無駄” “無駄” “無駄” “無駄” “無駄” “無駄” “無
駄” “無駄” [57] “無駄” “無駄” “無駄” “無駄”
“無駄” “無駄” “無駄” “無駄” [65] “無駄” “無駄”
“無駄” “無駄” “無駄” “無駄” “無駄” “無駄” [73]
“無駄” “無駄” “無駄” “無駄” “無駄” “無駄” “無
前処理に時間がかかる
-> 最終的な出力結果の質が低下する
???
[1] “どうしてこうなった” “どうしてこうなった”
[3] “どうしてこうなった” “どうしてこうなった”
[5] “どうしてこうなった” “どうしてこうなった”
[7] “どうしてこうなった” “どうしてこうなった”
[9] “どうしてこうなった” “どうしてこうなった”
[11] “どうしてこうなった” “どうしてこうなった”
[13] “どうしてこうなった” “どうしてこうなった”
[15] “どうしてこうなった” “どうしてこうなった”
[17] “どうしてこうなった” “どうしてこうなった”
[19] “どうしてこうなった” “どうしてこうなった”
[21] “どうしてこうなった” “どうしてこうなった”
[23] “どうしてこうなった” “どうしてこうなった”
[25] “どうしてこうなった” “どうしてこうなった”
Tokyo.R シリーズ前処理
今日のテーマ:
前処理のための
前処理
もちべーしょん: 前処理の苦労を減らしたい
内容…
? データ解析、前処理における環境構築、心がけ
? ぼくのがんがえたこうりつてきなまえしょり、
そのためにひつようなまえしょり
? 議論を通じて知識?理解を深めたい
#Tsurami
#Tsurami
?https://twitter.com/yamano357/status/552514988137783301
#Tsurami
?https://twitter.com/gg_hatano/status/551328451068588032
#Tsurami
Japan.R2014 所
さわ
沢さんの発表 ?より...
Remember ?why are you using SJIS? ?
?https://github.com/hadley/dplyr/issues/339
? 前処理を行う際に生じる問題の原因
? Are you okay?
? 邪智暴虐な俺々ファイルの存在
? コメントのない奇怪なコード
? 作業過程の再現性の欠如
? とりあえず、的に書かれたコード
[1] “滅” “滅” “滅” “滅” “滅” “滅” “滅” “滅”
“滅” “滅” “滅” [12] “滅” “滅” “滅” “滅” “滅”
“滅” “滅” “滅” “滅” “滅” “滅” [23] “滅” “滅”
“滅” “滅” “滅” “滅” “滅” “滅” “滅” “滅” “滅”
[34] “滅” “滅” “滅” “滅” “滅” “滅” “滅” “滅”
“滅” “滅” “滅” [45] “滅” “滅” “滅” “滅” “滅”
“滅” “滅” “滅” “滅” “滅” “滅” [56] “滅” “滅”
“滅” “滅” “滅” “滅” “滅” “滅” “滅” “滅” “滅”
[67] “滅” “滅” “滅” “滅” “滅” “滅” “滅” “滅”
“滅” “滅” “滅” [78] “滅” “滅” “滅” “滅” “滅”
“滅” “滅” “滅” “滅” “滅” “滅” [89] “滅” “滅”
“滅” “滅” “滅” “滅” “滅” “滅” “滅” “滅” “滅”
[100] “滅” “滅” “滅” “滅” “滅” “滅” “滅” “滅”
?R を使った前処理5原則
1. 作業は RStudio 内ですべて完結させる
2. .Rproj を作成する
3. .Rmd でファイルを保存する
4. Git によるバージョン管理をおこなう
5. プロジェクトのガイドラインを策定する
R における統合開発環境: RStudio
? そろそろ ver.0.99
? Viewer の強化
? パッケージ名の補完
? ref) ?http://goo.gl/inFdt5
? これから説明する内容は
すべて RStudio 上で行える
? 話題閑話
絶許
?https://twitter.com/gg_hatano/status/555923067675738113
.Rproj
? フォルダ内にフォルダ名.Rproj というファイ
ルが生成
? RStudio の設定などが記述される
ご利益
? 面倒なフォルダ指定、setwd からの開放
? パッケージ管理ツール Packrat の利用
? Git の運用
前処理のための前処理(罢辞办测辞.搁#45)
.Rmd: R + Markdown + LATEX
= POWERFUL ?
このスライドも.Rmd で書いている
?lab.noteパッケージでどうぞ 1
rmarkdown::draft(”MyReport.Rmd”,template=”basic_report”,package=”lab.note”)
1
ただし Windows、Linux、テメーらはダメだ(未検証)
アウトプット????????!!!!
ぼく「(モニターで確認して)よし、これでいいな」
ボス「図を印刷して見せて」
ぼく「(あああああああああ!!!!!!!!!)」
?LATEX おじさんが誕生した 2
2
HTML での出力はモニター向け。PDF を印刷したいよね、と。Word? しらん
Git: 分散型バージョン管理システム
? 長い時間を経てプロジェクトは完成される
? 完成後も管理し続ける必要が生じる
? 同様の処理を、別プロジェクトで、自分以外の
誰かが行う場合がある
? 記録として残すことが大事
GitHub で広がるコミュニケーション
? パッケージを作って公開
? 今日からあなたも開発者
? 芝を生やしてもちべーしょんを高めよう!
README ≒ 嫁
? リポジトリ(プロジェクト)の顔
? 迷った際はここを見れば解決できるように
1. 作業のワークフローを書く
2. ファイル名、関数名の規則
3. プロットの色、サイズ
?Tips
? とにかく日本語は NG
? SJIS
? 犬 -> INU にするなら辞書をひいてdog に
? ローマ字カナも良くない
? Excel は入力?閲覧用 -> dplyr パッケージで
? 単位変換、新たな列の作成は闇
? ハイフン、アンダーバーをどう扱うか
? スペースの落とし穴 (LATEX)
「いろいろと面倒だ」
「でも、あなたのちっぽけな
頭では忘れてしまう
でしょう(煽り)」
「ぐぬぬ」
? 自分のため、
? 仲間のため、
? 誰かのため
Let’s go! ?
@dichika 進捗どうですか ?
?http://www.slideshare.net/dichika/maeshori-missing
みんなで #Tsurami を供養しよう
?https://github.com/uribo/data_treatment
Sessioninfo: R version 3.1.2 (2014-10-31)
[1] “webshot” “ggthemr” “knitcitations” [4]
“fortunes” “xtable” “rmarkdown”
[7] “devtools” “popbio” “quadprog”
[10] “ggplot2” “glmmML” “dplyr”
[13] “magrittr” “MASS” “lattice”
[16] “stringr” “knitr”
Questions? ?

More Related Content

前処理のための前処理(罢辞办测辞.搁#45)