• 検索結果がありません。

付属 R スクリプトの実行方法 68

ドキュメント内 28 9 (ページ 74-82)

本節では本報告書で実行しているRスクリプトを実行する方法および注意点について説明する.

なお,Mac,Windowsそれぞれ以下の環境で問題なく動作することを確認している.

Mac環境

R version 3.3.1 (2016-06-21)

Platform: x86 64-apple-darwin13.4.0 (64-bit) Running under: OS X 10.10.5 (Yosemite)

Windows環境

R version 3.3.1 (2016-06-21)

Platform: x86 64-w64-mingw32/x64 (64-bit)

Running under: Windows 7 x64 (build 7601) Service Pack 1

(1) RscriptAndData.zipの解凍

本報告書に付属の「RscriptAndData.zip」を解凍すると,図–14に示すディレクトリ構造のデータ一式が展開され る.なお,ディレクトリとは,Windows環境におけるフォルダに相当する概念である.図中のJACIC Report Rscript とdata はディレクトリを,JACIC Report Rscript.R,jyoukou 20141111.csvおよびfixed jyoukou 20141111.csv はそれぞれファイルを表す.

JACIC Report Rscript 圧縮ファイルを解凍して出来るディレクトリ JACIC Report Rscript.R(文字エンコーディング:UTF-8) 報告書で実行しているRスクリプト

jyoukou 20141111.csv(文字エンコーディング:UTF-8)

相模原市内の各駅における一日当たりの平均乗降人員の推移(相模 原市,クリエイティブ・コモンズ・ライセンス 表示4.0)

fixed jyoukou 20141111.csv(文字エンコーディング:UTF-8)

jyoukou 20141111.csvをLibreOffice Calcで保存し直したもの(相 模原市,クリエイティブ・コモンズ・ライセンス 表示4.0)

図–14: 付属Rスクリプトおよびデータのディレクトリ構造

JACIC Report Rscript.Rとjyoukou 20141111.csvは文字エンコーディングがUTF-8のテキストファイルで ある.

Windows環境のRでは,Rスクリプトや入出力ファイルの標準文字エンコーディングがCP932であることに

注意されたい.

秋田県の時間帯別交通量表(ファイル名:zkntrf05.xls)は平成22年度全国道路・街路交通情勢調査(道路 交通センサス)からダウンロード*24して,JACIC Report Rscriptに保存しておくこと.

(2) Rスクリプトを読み込む

JACIC Report Rscript.RをWindows版のRで開くと,図–15(次ページ)に示すように日本語の箇所が文字 化けする.あらかじめJACIC Report Rscript.Rの文字エンコーディングをCP932に変換しておくことで文字 化けせずに開くことが出来るが,MacやLinux環境の共同研究者とスクリプトのやり取りをする場合は,都度変 換する必要があり,煩雑である.

このような場合には*25,RstudioというRに特化したIDE(Integrated Development Environment,統合開発環 境)を用いるとUTF-8のRスクリプトファイルであっても文字化けせずに使うことが出来る(図–16(p. 70)参照).

24http://www.mlit.go.jp/road/census/h22-1/data/xls/zkntrf05.xls

∗25単に自分ひとりで使う場合にも,コードハイライトやコード補完などの多くの便利な機能が使えるため有用である.

図–15: Windows版RでのRスクリプトの文字化け

図–16: Windows版Rstudioで開いたRスクリプト

(3) 作業ディレクトリを設定

本項では,解凍して出来たフォルダをデスクトップに保存した場合の作業ディレクトリの設定方法を説明する.

Windows 7で,ユーザ名はhasegawaとする.ユーザ名や保存先は適宜読み替えて欲しい.

setwd("C:\\Users\\hasegawa\\Desktop\\JACIC_Report_Rscript")

(4) データの読み込み

jyoukou 20141111.csvであるが,筆者のMac環境では問題なく読み込めたが,Windows環境では incomplete final line found by readTableHeader on ’jyoukou 20141111.csv’

というエラーが出て,読み込むことが出来なかった.このエラーに対処するために,jyoukou 20141111.csvを Win-dows版のLibreOffice Calcで開いた後,名前を付けて保存する,という操作を行い,fixed jyoukou 20141111.csv というファイルを作成した.このfixed jyoukou 20141111.csvであれば,Windows環境でも問題なく読み込む ことが出来ることを確認しているので,同様のエラーが生じる場合にはデータを読み込む箇所のスクリプトを以 下のように書き換えて実行されたい.

sagamihara <- read.csv(file = "fixed_jyoukou_20141111.csv", header = TRUE, fileEncoding = "UTF-8")

(5) ライブラリの読み込み

Rスクリプト中で,library()関数を使って,いくつかのライブラリを読み込んでいるが,そのためにはあらか じめライブラリをRシステムにインストールしておく必要がある.本報告書およびRスクリプト中ではじめて登 場するライブラリを読み込む状況では,library()関数のすぐ上にinstall.packages()関数で当該ライブラリを インストールする処理をコメント文として記述している.

例えば,miceパッケージであれば,

#install.packages(”mice”) #パッケージがインストールされていない場合

library(mice)

のように記述されている.

Rスクリプトをはじめて実行するときにだけ,行頭の#を削除し,install.packages("mice")を実行してイン ストールが必要である.それ以降はlibrary(mice)でパッケージを読み込めば良い.

なお,Windows環境でlibrary(XLConnect)を実行してXLConnectパッケージを読み込む際に 要求されたパッケージXLConnectJarsをロード中です

Error : .onLoadは loadNamespace()(’rJava’に対する)の中で失敗しました、詳細は:

call: fun(libname, pkgname)

error: JAVA HOME cannot be determined from the Registry

Error: パッケージ XLConnectJars をロードできませんでした

というエラーが出る場合がある.これはJavaがインストールされていないか,64bitのOSに32bit版のJavaを インストールしている,あるいは,逆に32bitのOSに64bitのJavaをインストールしている場合に生じるよう である.http://www.java.com/en/download/manual.jspから適切なものを選択してインストールすれば解決 すると思われる.

謝辞

本研究は一般財団法人日本建設情報総合センターの研究助成(助成番号 第2014-11号)を受けて行った.ここ に記して感謝の意を表する.

参考文献

1) 元田浩,山口高平,津本周作,沼尾正行: データマイニングの基礎, IT Text,オーム社, 2006.

2) 長谷川裕修,内藤利幸,有村幹治,田村亨: アンサンブル学習による交通機関選択モデルの構築とその評価,土木学会論文 D3(土木計画学), Vol. 68, No. 5, pp. 773–780, 2012.

3) MURAI, Y., ARIMURA, M., HASEGAWA, H., TAMURA, T. and KAJIYA, Y. : Text mining analysis on methods of information provision that influence tourists’ travel behavior,Journal of the Eastern Asia Society for Transportation Studies, Vol. 8, pp. 941–953, 2010.

4) HASEGAWA, H., FUJII, M., ARIMURA, M. and TAMURA, T. : A Basic Study on Traffic Accident Data Analysis Using Support VectorMachine,Journal of the Eastern Asia Society of Transportation Studies, Vol. 7, pp. 2873–2880, 2007.

5) Hasegawa, H., Arimura, M. and Tamura, T.: Hybrid Model of Random Forests and Genetic Algorithms for Commute Mode Choice Analysis, Proceedings of The Eastern Asia Society for Transportation Studies, Vol. 9, pp. 123–136, 2013.

6) ARIMURA, M., NAITO, T., HASEGAWA, H. and TAMURA, T.: APPLICATION OF DATA MINING TECH-NIQUES TO CONGESTION DATA ANALYSIS: THE CASE OF SAPPORO URBAN AREA,Selected Proceedings of World Conference on Transport Research, Vol. 12, 2010.

7) HASEGAWA, H., FUJII, M., ARIMURA, M. and TAMURA, T.: A Study on Traffic Accident Analysis Using Support Vector Machines,Proceedings of The 11th World Conference on Transportation Research, Vol. 11, World Conference on Transport Research Society, 2007.

8) 武智環,羽藤英二,柏谷増男: 超長期観測データによる個人の交通行動パターンの分析,土木計画学研究・講演集, Vol. 40, 2009.

9) Li, M., Zhang, Y. and Wang, W. : Analysis of congestion points based on probe car data,2009 12th International IEEE Conference on Intelligent Transportation Systems, pp. 1–5, 2009.

10) Lu, Y. and Kawamura, K. : Data-Mining Approach to Work Trip Mode Choice Analysis in Chicago, Illinois, Area, Transportation Research Record: Journal of the Transportation Research Board, Vol. 2156, pp. 73–80, 2010.

11) Hossain, M. and Muromachi, Y. : Understanding Crash Mechanisms and Selecting Interventions to Mitigate Real-Time Hazards on Urban Expressways, Transportation Research Record: Journal of the Transportation Research Board, Vol. 2213, pp. 53–62, 2011.

12) 舟尾暢男,高浪洋平: データ解析環境「R,2, 2007.

13) 舟尾暢男: The R Tips,2, 2009.

14) 国土交通省道路局: 平成22年度道路交通センサス全国道路・街路交通情勢調査−一般交通量調査−,一般社団法人交通工 学研究会, 2013.

15) 福島真太朗: データ分析プロセス, Useful R,共立出版株式会社, 2015.

16) 村山航: 欠損データ分析(missing data analysis) -完全情報最尤推定法と多重代入法-, 2011.

17) 間瀬茂,神保雅一,鎌倉稔成,金藤浩司: 工学のためのデータサイエンス入門,1, 2004.

18) 山本義郎,飯塚誠也,藤野友和: 統計データの視覚化,共立出版, 2013.

19) Murrell, P.: Rグラフィックス,共立出版, 2009.

索 引

A

as.factor()関数. . . .12,32

as.matrix()関数. . . .50

as.ordered()関数. . . .12,32 C cfa()関数. . . .20

colMaxs()関数. . . .50

colMeans()関数. . . .49

colMins()関数. . . .49,50 complete.cases()関数. . . .16

CP932 . . . .5,68 CSV . . . .5

D data cleaning . . . .15

data cleansing . . . .15

data preprocessing . . . .15

devtoolsパッケージ. . . .32

discretize()関数. . . .22,24 dummy variable . . . .32

E Equal Frequency Discretization . . . .22

Equal Width Discretization . . . .22

Excel . . . .9

F FIML . . . .19

full information maximum likelihood . . . .19

G ggplot2パッケージ. . . .66

growth()関数. . . .20

I infotheoパッケージ. . . .22,24 install.packages()関数. . . .71

install github()関数. . . .32

is.na()関数. . . .16

K k-means法. . . .22,29 kmeans()関数. . . .29

L lavaan()関数. . . .20

lavaanパッケージ. . . .20

lavCor()関数. . . .20

library()関数. . . .71

M makedummies()関数. . . .32, 33 makedummiesパッケージ. . . .32

matrixStatsパッケージ. . . .49, 50 md.pattern()関数. . . .17

MI . . . .19

mice()関数. . . .19

miceパッケージ. . . .17, 19 missing value . . . .16

multiple imputation . . . .19

N NA . . . .7

na.omit()関数. . . .20

ncol()関数. . . .64

normalize . . . .46

nrow()関数. . . .64

numeric . . . .12

P prcomp()関数. . . .35

principle component analysis . . . .35

R R . . . .1, 60 random sampling . . . .52

read.csv()関数. . . .5,6 read.fwf()関数. . . .5

read.table()関数. . . .5

read.xlsx()関数. . . .9

read csv()関数. . . .6

read fwf()関数. . . .5

readrパッケージ. . . .5,6 readWorksheetFromFile()関数. . . .9, 11 RODBCパッケージ. . . .4

S sample()関数. . . .52

sampling . . . .52

scale()関数. . . .46

sem()関数. . . .20

Shift-JIS . . . .5

SRI . . . .19

standardization . . . .46

stochastic regression imputation . . . .19

str()関数. . . .11

subset()関数. . . .55,58 summary()関数. . . .64,65 T table()関数. . . .65

U UTF-8 . . . .68

X XLConnectパッケージ. . . .9,71 xlsxパッケージ. . . .9

エクセル. . . .9

回帰代入法. . . .19

確率的回帰代入法. . . .19

カテゴリカルデータ. . . .32

完全情報最尤推定法. . . .19,20 クリーニング. . . .15

欠損値. . . .7,15,16,65 固定長テキスト. . . .5

次元削減. . . .35

実数. . . .12

主成分分析. . . .35

順序無し因子. . . .12

数量化理論II類. . . .32

スタージェスの公式. . . .22

正規化. . . .46

層別抽出法. . . .52

属性抽出. . . .35

多重代入法. . . .19

ダミー変数. . . .32

単一代入法. . . .18

単純無作為抽出法. . . .52

中央値代入法. . . .19

データフレーム. . . .7

等間隔区間による離散化. . . .22

等頻度区間による離散化. . . .22, 24 道路交通センサス. . . .9

非復元抽出. . . .52

標準化. . . .46

標本抽出. . . .52

復元抽出. . . .52

ペアワイズ法. . . .18, 21 平均値代入法. . . .18

前処理. . . .15

無作為抽出法. . . .52

名義尺度. . . .32

文字エンコーディング. . . .5

リストワイズ法. . . .18, 20

様 式 −3 −3

DATA PREPROCESSING AND CLEANING METHODS FOR UTILIZING BIG DATA IN TRANSPORTATION RESEARCH

Hasegawa,H. 1

1National Institute of Technology, Akita College

In recent years, major improvements in information and communication technology have aided data collection in the transportation research area. The captured data needs to be converted into information and knowledge to become useful for decision-making. However, as data have grown in size and complexity, it is not satisfied only by traditional statistical methods. Searching for useful nuggets of information among huge amounts of data has become known as the field of data mining. Data mining is the entire process of applying computer-based methodology, including new techniques for knowledge discovery, to data.

Under these circumstances, purposes of this study are followings:

1. Surveying data preprocessing and cleaning methods.

2. Applying data preprocessing and cleaning methods for transportation related data sets.

3. In particular, making well-organized reference about data preprocessing and cleaning methods for transportation researchers.

The following two results were obtained.

1. “GNU R” is adopted for applying data preprocessing and cleaning methods for transportation related data sets. “GNU R” is a open source language and development environment for statistical analysis.

2. A reference report about data preprocessing and cleaning methods for transportation researchers is available via JACIC’s web site.

KEYWORDS:

data preprocessing, data cleaning, big data, GNU R, transportation.

ドキュメント内 28 9 (ページ 74-82)

関連したドキュメント