SlideShare a Scribd company logo
~AITCクラウドテクノロジー活用部会~
気象庁XMLのSPARQL APIを
利用してデータを俯瞰しよう
- SPARQLとRによる可視化 -
2014/04/22
菅井康之
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
• 気象庁XMLのデータをAPIで公開しているけ
ど、ただ公開するだけじゃなくて、もう少し
特色を出して行きたいと思う今日この頃
• せっかくSPARQLのエンドポイントも公開し
ているので、通常のAPIでは簡単に出来な
い、統計情報や俯瞰したデータを可視化
し、公開してはどうだろう?
というわけで、今回はSPARQLの
クエリ発行から可視化までを
行ってみます
3Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
3
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
-大体の流れ-
•月毎に気象庁XMLの情報を集計する
SPARQLクエリを発行
•SPARQLの結果をRで読み込み、若干の補正
•種類が多いので、可視化部分はrChartsを
利用してインタラクティブに
※rChartsについては下記スライドを参照ください
http://www.slideshare.net/yasuyukisugai/r-charts
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
• SPARQLクエリはこんな感じにしました
※日付として処理したいので、末尾を1日固定にしています
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX atom: <http://www.w3.org/2005/Atom#>
PREFIX jma: <http://cloud.projectla.jp/jma/>
PREFIX area: <http://cloud.projectla.jp/jma/area#>
PREFIX link2: <http://cloud.projectla.jp/jma/link2/>
SELECT ?title ?mon (COUNT(?id) as ?c)
WHERE {
?id atom:title ?title .
?id atom:updated ?updated
} GROUP BY ?title
(CONCAT(STR(YEAR(xsd:dateTime(?updated))), '/',
STR(MONTH(xsd:dateTime(?updated))), '/01') AS ?mon)
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
• SPARQLクエリの発行、結果取得をRで行
うには?→RのSPARQLライブラリを利用しま
す
• Rで以下のコマンドを実行し、ライブラリを
インストール&ロードします
> install.packages("SPARQL")
> library(SPARQL)
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
• RでSPARQLクエリを発行し、結果を取得
します
• デフォルトのXML形式だと日本語が文字
化けするので、CSV形式で取得しています
• →Fusekiと相性が悪い??
• →XMLにUTF-8が付いてないのが原因
> endpoint="http://api.aitc.jp/ds/sparql"
> query="前のスライドのクエリを見てね!"
> result<-SPARQL(url=endpoint, query=query,
extra=list(output="csv"), format="csv")
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
• 取得結果はこんな感じ
> View(result$result)
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
• データをソートしたり、不要なデータを除去
したり・・・
※2012/12のデータは、気象庁XMLの公開が
開始された月のため、1ヶ月に満たない
データしか存在しません
 そのため、今回の対象データからは除去
 しています
> result2<-result$result
> result2<-transform(result2, date=as.Date(mon))
> result2<-result2[order(result2$title, result2$date),]
> result2<-result2[as.Date("2013/01/01")<=result2$date,]
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
• 可視化部分はrChartsを利用します
• Rで以下のコマンドを実行し、ライブラリを
インストール&ロードします
> install.packages("devtools")
> library(devtools)
> install_github("rCharts", "ramnathv")
> library(rCharts)
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
• 今回はあまり凝った事をしないので、
HighChartsで単純に可視化します
※rChartsは日付処理がややめんどい
> result2 = transform(result2 ,
date2 = as.numeric(as.POSIXct(date))*1000)
> p2<-hPlot(c date2, data=result2, group="title")
> p2$xAxis(type = 'datetime', labels = list(
format = '{value:%Y-%m}'
))
> p2$set(width=1200, height=800)
> p2
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
• こんな感じで可視化出来ました
• これをフィルタリングしていくと・・・
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
• 気象警報・注意報は夏場に多かったり
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ1 季節や月によるデータの傾向を見たい
• 竜巻注意情報も夏場に多い事が分かっ
たりします
15Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
15
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ2 気象台や情報毎の細かいデータの傾
向を見たい
-大体の流れ-
•SPARQLクエリがちょっと違うくらいで、やって
る事は同じ
ちなみに、再現性が大事と教わったので、この
スライドは細かく書くようにしています
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
• SPARQLクエリはこんな感じで
※authorとname(リテラル)を追加しただけです・・・はい・・・
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX atom: <http://www.w3.org/2005/Atom#>
PREFIX jma: <http://cloud.projectla.jp/jma/>
PREFIX area: <http://cloud.projectla.jp/jma/area#>
PREFIX link2: <http://cloud.projectla.jp/jma/link2/>
SELECT ?title ?name ?mon (COUNT(?id) as ?c) WHERE {
?id atom:title ?title .
?id atom:updated ?updated .
?id atom:author ?author .
?author link2:name ?name
} GROUP BY ?title ?name
(CONCAT(STR(YEAR(xsd:dateTime(?updated))), '/',
STR(MONTH(xsd:dateTime(?updated))), '/01') AS ?mon)
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
• 前回同様に、RでSPARQLクエリを発行
し、結果を取得します
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
> endpoint="http://api.aitc.jp/ds/sparql"
> query="前のスライドのクエリを見てね!"
> result<-SPARQL(url=endpoint, query=query,
extra=list(output="csv"), format="csv")
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
• 取得結果はこんな感じ
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
> View(result$result)
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
• データをソートしたり、不要なデータを除去
したり・・・
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
> result2_2<-result$result
> result2_2<-transform(result2_2, date=as.Date(mon))
> result2_2<-result2_2[order(result2_2$name,
result2_2$title, result2_2$date),]
> result2_2<-result2_2[as.Date("2013/01/01")<=result2_2$date,]
> result2_2 = transform(result2_2 ,
date2 = as.numeric(as.POSIXct(date))*1000)
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
• 試しに山口県の気象台の気象情報を可
視化してみます
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
> result2_2_yamaguchi<- result2_2[result2_2$name=="下関地方気象台", ]
> p2<-hPlot(c date2, data=result2_2_yamaguchi, group="title")
> p2$xAxis(type = 'datetime', labels = list(
format = '{value:%Y-%m}'
))
> p2$set(width=1200, height=800)
> p2
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
• 高温注意情報が出たり、4月にも気象警
報・注意報が夏並みに出てたりなど。。
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
• 高温注意情報の頻度を気象台毎に見て
みます
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
> result2_2_kouon<-result2_2[result2_2$title=="府県高温注意情報", ]
> p2<-hPlot(c date2, data=result2_2_kouon,
group="name", type = "scatter")
> p2$xAxis(type = 'datetime', labels = list(
format = '{value:%Y-%m-%d}'
))
> p2$set(width=1200, height=600)
> p2
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
• やはり沖縄が一番多く、また石垣島では
5月から発令されているなど。。
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
• 記録的短時間大雨情報の頻度を気象
台毎に見てみます
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
> result2_2_kiroku<- result2_2[result2_2$title=="記録的短時間大雨情報", ]
> p2<-hPlot(c date2, data=result2_2_kiroku,
group="name", type = "scatter")
> p2$xAxis(type = 'datetime', labels = list(
format = '{value:%Y-%m-%d}'
))
> p2$set(width=1200, height=600)
> p2
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
テーマ2 気象台や情報毎の細かいデータの
傾向を見たい
• 9月の岐阜が最も多く、福島では4月に
一度発令されているなど。。。
Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved.
•Let’s have Fun!! :)

More Related Content

PDF
第2回 R言語で始めよう、データサイエンス(ハンズオン勉強会) 〜相関分析による需要予測編〜
PDF
R言語で始めよう、データサイエンス(ハンズオン勉強会) 〜機会学習・データビジュアライゼーション事始め〜
PPTX
R超入門機械学習をはじめよう
PPTX
さくっとはじめるテキストマイニング(R言語)  スタートアップ編
PDF
Deep Learningハンズオン勉強会「Caffeで画像分類を試してみようの会」
PDF
#経済学のための実践的データ分析 11. データのビジュアライゼーション
PDF
経済学のための実践的データ分析 4.SQL ことはじめ
PDF
初心者のためのRとRStudio入門 vol.2
第2回 R言語で始めよう、データサイエンス(ハンズオン勉強会) 〜相関分析による需要予測編〜
R言語で始めよう、データサイエンス(ハンズオン勉強会) 〜機会学習・データビジュアライゼーション事始め〜
R超入門機械学習をはじめよう
さくっとはじめるテキストマイニング(R言語)  スタートアップ編
Deep Learningハンズオン勉強会「Caffeで画像分類を試してみようの会」
#経済学のための実践的データ分析 11. データのビジュアライゼーション
経済学のための実践的データ分析 4.SQL ことはじめ
初心者のためのRとRStudio入門 vol.2

What's hot (20)

PDF
Treasure Data × Wave Analytics EC Demo
PPSX
HBaseとSparkでセンサーデータを有効活用 #hbasejp
PDF
Sparkを用いたビッグデータ解析 〜 前編 〜
PDF
[データマイニング+WEB勉強会][R勉強会] R言語によるクラスター分析 - 活用編
PDF
Hivemall v0.3の機能紹介@1st Hivemall meetup
PDF
Elasticsearchと機械学習を実際に連携させる
PDF
経済学のための実践的データ分析 5.特許データの分析
PDF
SparkMLlibで始めるビッグデータを対象とした機械学習入門
PDF
DeltaCubeにおけるユニークユーザー集計高速化(理論編)
PPTX
Pysparkで始めるデータ分析
PDF
16.02.08_Hadoop Conferece Japan 2016_データサイエンスにおける一次可視化からのSpark on Elasticsear...
PDF
「深層学習」の本に出てきたデータセット達
PPTX
Pythonで入門するApache Spark at PyCon2016
PPTX
WebDB Forum 2012 基調講演資料
PDF
経済学のための実践的データ分析2. python, R, Jupyter notebook 事始め/統計ソフトちゃんちゃかちゃん
PDF
#経済学のための実践的データ分析 6. データを実際に分析するまでのとてもとても遠く険しく細く長い道
PDF
RedisのBitCountとHyperLogLogを使用した超高速Unique User数集計
PPTX
エンジニアのための機械学習の基礎
PDF
FluentdやNorikraを使った データ集約基盤への取り組み紹介
PDF
実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...
Treasure Data × Wave Analytics EC Demo
HBaseとSparkでセンサーデータを有効活用 #hbasejp
Sparkを用いたビッグデータ解析 〜 前編 〜
[データマイニング+WEB勉強会][R勉強会] R言語によるクラスター分析 - 活用編
Hivemall v0.3の機能紹介@1st Hivemall meetup
Elasticsearchと機械学習を実際に連携させる
経済学のための実践的データ分析 5.特許データの分析
SparkMLlibで始めるビッグデータを対象とした機械学習入門
DeltaCubeにおけるユニークユーザー集計高速化(理論編)
Pysparkで始めるデータ分析
16.02.08_Hadoop Conferece Japan 2016_データサイエンスにおける一次可視化からのSpark on Elasticsear...
「深層学習」の本に出てきたデータセット達
Pythonで入門するApache Spark at PyCon2016
WebDB Forum 2012 基調講演資料
経済学のための実践的データ分析2. python, R, Jupyter notebook 事始め/統計ソフトちゃんちゃかちゃん
#経済学のための実践的データ分析 6. データを実際に分析するまでのとてもとても遠く険しく細く長い道
RedisのBitCountとHyperLogLogを使用した超高速Unique User数集計
エンジニアのための機械学習の基礎
FluentdやNorikraを使った データ集約基盤への取り組み紹介
実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...
Ad

Similar to 気象庁XMLのSPARQL APIを利用してデータを俯瞰しよう -SPARQLとRによる可視化- (12)

PDF
Hack For Japan 気象データ勉強会
PDF
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
PDF
Tokyor39 yokkuns
PDF
【18-B-2】データ分析で始めるサービス改善最初の一歩
PDF
SPARQLでマッシュアップ -LOD活用のための技術紹介-
PDF
Geotag Data Mining (メタサーベイ )
PPTX
Time series-forecasting-14
PDF
可視化周辺の進化がヤヴァイ 〜2016〜
PDF
RでGISハンズオンセッション
PDF
計算社会科学におけるWebマイニング
PPTX
データ可視化作品を「みること」と「つくること」
PPTX
Tokyo.R #66 初心者セッション3
Hack For Japan 気象データ勉強会
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
Tokyor39 yokkuns
【18-B-2】データ分析で始めるサービス改善最初の一歩
SPARQLでマッシュアップ -LOD活用のための技術紹介-
Geotag Data Mining (メタサーベイ )
Time series-forecasting-14
可視化周辺の進化がヤヴァイ 〜2016〜
RでGISハンズオンセッション
計算社会科学におけるWebマイニング
データ可視化作品を「みること」と「つくること」
Tokyo.R #66 初心者セッション3
Ad

More from Yasuyuki Sugai (16)

PDF
業務システムで使える可視化テクニック - Apache HTTP編 -
PDF
AnsibleではじめるNW設定の自動化について - Cisco(VIRL)編 -
PDF
Caffeの特徴と最近の動向 -CNN、そしてRNNへ-
PDF
第3回機械学習勉強会「色々なNNフレームワークを動かしてみよう」-Keras編-
PDF
第三回デジタルガジェット祭り! LT「ペットとセンサー編」
PDF
AITCオープンラボ IoTx総まとめ「IoTxロボット・AI開発をはじめよう!」
PDF
IoTとDeep Learningで自宅警備員を育ててみる
PDF
IoTハンズオン勉強会 「センサーデータをクラウドに蓄積してみよう」
PDF
IoT勉強会「IoTデバイス Intel Edison編」
PDF
IoT勉強会「littleBitsとIFTTTで超お手軽IoTクッキング」
PDF
IoT勉強会「とりあえずIoT的なものを作ってみた ~センサーデータの測定・収集・蓄積・分析・出力まで~」
PDF
AITCクラウド部会 2014年度 これまでの振り返りとこれから
PDF
rChartsによるインタラクティブな可視化表現
PDF
Yahoo Open Hack Day Japan 2
PDF
Vagrant勉強会 チュートリアル編
PDF
RとJavaScript Visualizationを俯瞰しよう
業務システムで使える可視化テクニック - Apache HTTP編 -
AnsibleではじめるNW設定の自動化について - Cisco(VIRL)編 -
Caffeの特徴と最近の動向 -CNN、そしてRNNへ-
第3回機械学習勉強会「色々なNNフレームワークを動かしてみよう」-Keras編-
第三回デジタルガジェット祭り! LT「ペットとセンサー編」
AITCオープンラボ IoTx総まとめ「IoTxロボット・AI開発をはじめよう!」
IoTとDeep Learningで自宅警備員を育ててみる
IoTハンズオン勉強会 「センサーデータをクラウドに蓄積してみよう」
IoT勉強会「IoTデバイス Intel Edison編」
IoT勉強会「littleBitsとIFTTTで超お手軽IoTクッキング」
IoT勉強会「とりあえずIoT的なものを作ってみた ~センサーデータの測定・収集・蓄積・分析・出力まで~」
AITCクラウド部会 2014年度 これまでの振り返りとこれから
rChartsによるインタラクティブな可視化表現
Yahoo Open Hack Day Japan 2
Vagrant勉強会 チュートリアル編
RとJavaScript Visualizationを俯瞰しよう

気象庁XMLのSPARQL APIを利用してデータを俯瞰しよう -SPARQLとRによる可視化-

  • 2. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. • 気象庁XMLのデータをAPIで公開しているけ ど、ただ公開するだけじゃなくて、もう少し 特色を出して行きたいと思う今日この頃 • せっかくSPARQLのエンドポイントも公開し ているので、通常のAPIでは簡単に出来な い、統計情報や俯瞰したデータを可視化 し、公開してはどうだろう? というわけで、今回はSPARQLの クエリ発行から可視化までを 行ってみます
  • 3. 3Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい 3
  • 4. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい -大体の流れ- •月毎に気象庁XMLの情報を集計する SPARQLクエリを発行 •SPARQLの結果をRで読み込み、若干の補正 •種類が多いので、可視化部分はrChartsを 利用してインタラクティブに ※rChartsについては下記スライドを参照ください http://www.slideshare.net/yasuyukisugai/r-charts
  • 5. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい • SPARQLクエリはこんな感じにしました ※日付として処理したいので、末尾を1日固定にしています PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX atom: <http://www.w3.org/2005/Atom#> PREFIX jma: <http://cloud.projectla.jp/jma/> PREFIX area: <http://cloud.projectla.jp/jma/area#> PREFIX link2: <http://cloud.projectla.jp/jma/link2/> SELECT ?title ?mon (COUNT(?id) as ?c) WHERE { ?id atom:title ?title . ?id atom:updated ?updated } GROUP BY ?title (CONCAT(STR(YEAR(xsd:dateTime(?updated))), '/', STR(MONTH(xsd:dateTime(?updated))), '/01') AS ?mon)
  • 6. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい • SPARQLクエリの発行、結果取得をRで行 うには?→RのSPARQLライブラリを利用しま す • Rで以下のコマンドを実行し、ライブラリを インストール&ロードします > install.packages("SPARQL") > library(SPARQL)
  • 7. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい • RでSPARQLクエリを発行し、結果を取得 します • デフォルトのXML形式だと日本語が文字 化けするので、CSV形式で取得しています • →Fusekiと相性が悪い?? • →XMLにUTF-8が付いてないのが原因 > endpoint="http://api.aitc.jp/ds/sparql" > query="前のスライドのクエリを見てね!" > result<-SPARQL(url=endpoint, query=query, extra=list(output="csv"), format="csv")
  • 8. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい • 取得結果はこんな感じ > View(result$result)
  • 9. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい • データをソートしたり、不要なデータを除去 したり・・・ ※2012/12のデータは、気象庁XMLの公開が 開始された月のため、1ヶ月に満たない データしか存在しません  そのため、今回の対象データからは除去  しています > result2<-result$result > result2<-transform(result2, date=as.Date(mon)) > result2<-result2[order(result2$title, result2$date),] > result2<-result2[as.Date("2013/01/01")<=result2$date,]
  • 10. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい • 可視化部分はrChartsを利用します • Rで以下のコマンドを実行し、ライブラリを インストール&ロードします > install.packages("devtools") > library(devtools) > install_github("rCharts", "ramnathv") > library(rCharts)
  • 11. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい • 今回はあまり凝った事をしないので、 HighChartsで単純に可視化します ※rChartsは日付処理がややめんどい > result2 = transform(result2 , date2 = as.numeric(as.POSIXct(date))*1000) > p2<-hPlot(c date2, data=result2, group="title") > p2$xAxis(type = 'datetime', labels = list( format = '{value:%Y-%m}' )) > p2$set(width=1200, height=800) > p2
  • 12. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい • こんな感じで可視化出来ました • これをフィルタリングしていくと・・・
  • 13. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい • 気象警報・注意報は夏場に多かったり
  • 14. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ1 季節や月によるデータの傾向を見たい • 竜巻注意情報も夏場に多い事が分かっ たりします
  • 15. 15Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ2 気象台や情報毎の細かいデータの 傾向を見たい 15
  • 16. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ2 気象台や情報毎の細かいデータの傾 向を見たい -大体の流れ- •SPARQLクエリがちょっと違うくらいで、やって る事は同じ ちなみに、再現性が大事と教わったので、この スライドは細かく書くようにしています
  • 17. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. • SPARQLクエリはこんな感じで ※authorとname(リテラル)を追加しただけです・・・はい・・・ テーマ2 気象台や情報毎の細かいデータの 傾向を見たい PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX atom: <http://www.w3.org/2005/Atom#> PREFIX jma: <http://cloud.projectla.jp/jma/> PREFIX area: <http://cloud.projectla.jp/jma/area#> PREFIX link2: <http://cloud.projectla.jp/jma/link2/> SELECT ?title ?name ?mon (COUNT(?id) as ?c) WHERE { ?id atom:title ?title . ?id atom:updated ?updated . ?id atom:author ?author . ?author link2:name ?name } GROUP BY ?title ?name (CONCAT(STR(YEAR(xsd:dateTime(?updated))), '/', STR(MONTH(xsd:dateTime(?updated))), '/01') AS ?mon)
  • 18. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. • 前回同様に、RでSPARQLクエリを発行 し、結果を取得します テーマ2 気象台や情報毎の細かいデータの 傾向を見たい > endpoint="http://api.aitc.jp/ds/sparql" > query="前のスライドのクエリを見てね!" > result<-SPARQL(url=endpoint, query=query, extra=list(output="csv"), format="csv")
  • 19. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. • 取得結果はこんな感じ テーマ2 気象台や情報毎の細かいデータの 傾向を見たい > View(result$result)
  • 20. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. • データをソートしたり、不要なデータを除去 したり・・・ テーマ2 気象台や情報毎の細かいデータの 傾向を見たい > result2_2<-result$result > result2_2<-transform(result2_2, date=as.Date(mon)) > result2_2<-result2_2[order(result2_2$name, result2_2$title, result2_2$date),] > result2_2<-result2_2[as.Date("2013/01/01")<=result2_2$date,] > result2_2 = transform(result2_2 , date2 = as.numeric(as.POSIXct(date))*1000)
  • 21. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. • 試しに山口県の気象台の気象情報を可 視化してみます テーマ2 気象台や情報毎の細かいデータの 傾向を見たい > result2_2_yamaguchi<- result2_2[result2_2$name=="下関地方気象台", ] > p2<-hPlot(c date2, data=result2_2_yamaguchi, group="title") > p2$xAxis(type = 'datetime', labels = list( format = '{value:%Y-%m}' )) > p2$set(width=1200, height=800) > p2
  • 22. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ2 気象台や情報毎の細かいデータの 傾向を見たい • 高温注意情報が出たり、4月にも気象警 報・注意報が夏並みに出てたりなど。。
  • 23. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. • 高温注意情報の頻度を気象台毎に見て みます テーマ2 気象台や情報毎の細かいデータの 傾向を見たい > result2_2_kouon<-result2_2[result2_2$title=="府県高温注意情報", ] > p2<-hPlot(c date2, data=result2_2_kouon, group="name", type = "scatter") > p2$xAxis(type = 'datetime', labels = list( format = '{value:%Y-%m-%d}' )) > p2$set(width=1200, height=600) > p2
  • 24. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ2 気象台や情報毎の細かいデータの 傾向を見たい • やはり沖縄が一番多く、また石垣島では 5月から発令されているなど。。
  • 25. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. • 記録的短時間大雨情報の頻度を気象 台毎に見てみます テーマ2 気象台や情報毎の細かいデータの 傾向を見たい > result2_2_kiroku<- result2_2[result2_2$title=="記録的短時間大雨情報", ] > p2<-hPlot(c date2, data=result2_2_kiroku, group="name", type = "scatter") > p2$xAxis(type = 'datetime', labels = list( format = '{value:%Y-%m-%d}' )) > p2$set(width=1200, height=600) > p2
  • 26. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. テーマ2 気象台や情報毎の細かいデータの 傾向を見たい • 9月の岐阜が最も多く、福島では4月に 一度発令されているなど。。。
  • 27. Copyright © 2014 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. •Let’s have Fun!! :)