R システムで XML 文書の XPath 式処理を行なう(R システム,XML を使用)
【関連する外部ページ】
- http://www.omegahat.org/RSXML/shortIntro.html (現存しない)
- http://www.omegahat.org/RSXML/Tour.pdf (現存しない)
前準備
R システムのインストール
【関連する外部ページ】
R システムの CRAN の URL: https://cran.r-project.org/
XML パッケージのインストール
R システムで,次のコマンドを実行し,インストールする. vignette で説明を表示.
このとき「Secure CRAN mirrors」のような,ミラーサイトの選択画面が出たときは「Japan」のものを選ぶ.
install.packages("XML")
vignette("XML")
この操作でインストールが行われる. R システムのパッケージのインストールについては、 必要に応じて「R システムでのパッケージのインストール」のページを参考にしてください.
XPath 式処理を行ってみる
- 事前準備
処理したい XML ファイルを準備しておく
- R の起動
cd /tmp R
- パッケージの読み込み
library(XML)
- XMLファイルの読み込みとパーズ
doc = xmlInternalTreeParse("1.xml")
- 確認表示
- XPath式 の例
- 要素の選択
getNodeSet(doc, "/osm/node")
- 要素の選択 (条件式を含む)
getNodeSet(doc, "/osm/node[@lon > 12.25]")
- XPath 式の結果を R で処理
xmlGetAttr 関数を使って 属性 lon の属性値を取り出す例
s >- getNodeSet(doc, "/osm/node") sapply(s, function(x) xmlGetAttr(x, "lon"))
- 要素の選択