13
takemikamiʼs note ‒ http://takemikami.com/ ims@sparqlではじめる R Markdownとgitbookによるレポート⽣成 Copyright (C) Takeshi Mikami. All rights reserved. 1 みかみんP(フリーランスITエンジニア) twitter: @takemikamas 2017.9.2 あいますえんじにあ Meetup in 京都 R RMarkdown SPARQL im@sparql

Ims@sparqlではじめるr markdownとgitbookによるレポート生成

Embed Size (px)

Citation preview

takemikamiʼs note ‒ http://takemikami.com/

ims@sparqlではじめるR Markdownとgitbookによるレポート⽣成

Copyright (C) Takeshi Mikami. All rights reserved. 1

みかみんP(フリーランスITエンジニア) twitter: @takemikamas2017.9.2 あいますえんじにあ Meetup in 京都R RMarkdown SPARQL im@sparql

takemikamiʼs note ‒ http://takemikami.com/

副業紹介

• みかみんP (@takemikamas)• フリーランスITエンジニア• データ分析及び機械学習等の応⽤システム開発• マーケティングデータ分析基盤のシステム開発

• 略歴• 確率論・情報通信ネットワーク @ 甲南⼤学理学部応⽤数学科• Web系システムの開発・構築 @ NEC系SIer• 旅⾏系ECサイトのマーケティングデータ分析 @ DeNA• データ分析及び機械学習等の応⽤システム開発 @ フリーランス

• 最近扱っている技術領域• Hadoop&Spark, Scala, Python, hivemall, AWS

Copyright (C) Takeshi Mikami. All rights reserved. 2

発表者の副業を紹介します

P

takemikamiʼs note ‒ http://takemikami.com/

im@sparqlとは

Copyright (C) Takeshi Mikami. All rights reserved. 3

im@sparqlの紹介をします

im@s + sparql = im@sparql• アイマスワールドのデータベース• WebやアプリからSPARQLでアクセス可能

takemikamiʼs note ‒ http://takemikami.com/

R Markdownとは

• Markdown形式の⽂書で、⽂書中のRのコードを実⾏し、結果を確認することが出来る• RMarkdownから

実⾏結果を埋め込んだMarkdown⽂書に変換することが出来る

Copyright (C) Takeshi Mikami. All rights reserved. 4

R Markdownの紹介をします

Rの実⾏結果の埋め込みが出来るMarkdown形式の⽂書

takemikamiʼs note ‒ http://takemikami.com/

R Markdown中のコード実⾏

• 埋め込んだRのコード部分でShift+Control+Enterで実⾏

Copyright (C) Takeshi Mikami. All rights reserved. 5

RStudioでR Markdown中のコードを実⾏するイメージを⽰します

takemikamiʼs note ‒ http://takemikami.com/

gitbookとは

Copyright (C) Takeshi Mikami. All rights reserved. 6

gitbookの紹介をします

gitとmarkdownによる書籍⽣成ツール• Markdownで記載したドキュメントから、

いろいろな形式の書籍を⽣成出来る。• HTML• PDF• ePub

• gitbook.comという書籍公開のプラットフォームもある

takemikamiʼs note ‒ http://takemikami.com/

レポート作成の仕組みの全体像

• RStudioでデータを分析し、その結果からpdf等を⽣成します。

Copyright (C) Takeshi Mikami. All rights reserved. 7

レポート作成の仕組みの全体像を⽰します

htmlpdf

Rmd md

分析のプロセス

gitbookR/knitrレポート⽣成のプロセス

takemikamiʼs note ‒ http://takemikami.com/

Rからim@sparqlにクエリを投げる

• SPARQLのライブラリ⽂字化けしたので、tidyjsonとcurlでなんとかした

Copyright (C) Takeshi Mikami. All rights reserved. 8

Rからim@sparqlのendpointにクエリを投げてみました

library(dplyr)library(curl)library(tidyjson)imasparql <- function(q) {endpoint <- https://sparql.crssnky.xyz/spql/imas/queryrequrl <- paste(endpoint , "?query=" , URLencode(q, reserved=TRUE), sep="")result <- curl_fetch_memory(requrl)rtnarray <- rawToChar(result$content) %>% enter_object('results') %>% enter_object('bindings') %>%

gather_arrayreturn(rtnarray)

}

df <- imasparql(“※ここにSPARQL※")%>% spread_values(name=jstring("name", "value"), sum = jstring(”sum", "value") )%>% select("name", ”sum")

ここにクエリ

ここにとりたいカラムここにとりたいカラム

takemikamiʼs note ‒ http://takemikami.com/

RStudioで分析しているイメージ

Copyright (C) Takeshi Mikami. All rights reserved. 9

RStudioで分析しているイメージです

CuCoPaの得票数ヒストグラム

都道府県別⼈⼝とアイドル数のプロット

takemikamiʼs note ‒ http://takemikami.com/

⽣成したレポートのイメージ

Copyright (C) Takeshi Mikami. All rights reserved. 10

⽣成したPDFレポートのイメージです

takemikamiʼs note ‒ http://takemikami.com/

分析例

• 東京出⾝アイドルは多いが、⼈⼝との⽐率でみても多いのか?

Copyright (C) Takeshi Mikami. All rights reserved. 11

im@asparqlを⽤いた分析例を紹介します

東京→やっぱり多い

→都道府県別⼈⼝

アイドル数↑

takemikamiʼs note ‒ http://takemikami.com/

分析例

• ⼈⼝⽐では、⾼知・⽯川・福井など東京より多いところが9県

Copyright (C) Takeshi Mikami. All rights reserved. 12

im@asparqlを⽤いた分析例を紹介します

→都道府県別⼈⼝

アイドル数↑

この辺りが気になる

takemikamiʼs note ‒ http://takemikami.com/

分析例

• 愛知・⼤阪・福岡などは⼈⼝に対してアイドルが少ない

Copyright (C) Takeshi Mikami. All rights reserved. 13

im@asparqlを⽤いた分析例を紹介します

→都道府県別⼈⼝

アイドル数↑

逆に少ないとこは?

→もっとスカウトした⽅がよいのか?