Rで解析:WHO公開のデータを取得!「WHO」パッケージ


投稿日: Rの解析に役に立つ記事 ,

WHO(世界保健機関)が公開しているデータをAPIを利用して取得するパッケージです。参考までに2008年のBMI30以上の男性データを取得し、世界地図にプロットする例を紹介します。

世界地図へのプロットは「rworldmap」パッケージを利用しています。非常に便利なパッケージなので後日紹介できればと思います。

パッケージバージョンは0.1。実行コマンドはwindows 7およびOS X 10.11.2のR version 3.2.2で確認しています。


パッケージのインストール

下記、コマンドを実行してください。

#パッケージのインストール
install.packages("WHO")

実行コマンド

詳細はコメント、パッケージのヘルプを確認してください。

#パッケージの読み込み
library("WHO")

#利用できるデータの情報を取得:get_codesコマンド
SummaryCodes <- get_codes() #CSVでデータを作業フォルダに出力 write.csv(SummaryCodes, "SummaryCodes.csv") #データのラベルで取得データを指定:get_dataコマンド #2008年のBMI30以上の調査結果 GetData <- as.data.frame(get_data("WHOSIS_000010")) #データ構造の確認 str(GetData) 'data.frame': 612 obs. of 8 variables: $ gho : chr "Adults aged &#8805; 20 years who are obese (%)" ... $ year : num 2008 2008 2008 2008 2008 ... $ sex : chr "Male" "Male" "Male" "Male" ... $ country : chr "Australia" "Bahamas" "Benin" "Chad" ... $ worldbankincomegroup: chr "High-income" "High-income" "Low-income" "Low-income" ... $ region : chr "Western Pacific" "Americas" "Africa" "Africa" ... $ publishstate : chr "Published" "Published" "Published" "Published" ... $ value : chr "25.2 [22.1-28.4]" "26.7 [12.8-41.1]" "3.5 [2.2-5.0]" "2.4 [0.8-5.1]" #男性の肥満状況を世界地図へプロット #男性のデータを抽出 MaleSubsetData <- subset(GetData, GetData[, 3] == "Male") #valueのデータの"[]"部分を削除 MaleSubsetData[, 8] <- as.numeric(sapply(MaleSubsetData[, 8], function(x) unlist(strsplit(x, " ")[[1]][1]))) #世界地図へのプロットが簡単なrworldmapパッケージを読み込み #install.packages("rworldmap") library("rworldmap") #プロット PlotCountMap <- joinCountryData2Map(MaleSubsetData, joinCode = "NAME", nameJoinColumn = "country") mapCountryData(PlotCountMap, nameColumnToPlot = "value", mapTitle = "2008:Male BMI 30 >") [/code]


出力例

・男性の肥満状況を世界地図へプロット
worldWHO


少しでも、あなたのウェブや実験の解析が楽になりますように!!

スポンサードリンク

関連コンテンツ


スポンサードリンク