Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
sleipnir002
9,637 views
How to use animation packages in R(Japanese)
Read more
14
Save
Share
Embed
Embed presentation
Download
Downloaded 41 times
1
/ 56
2
/ 56
3
/ 56
4
/ 56
5
/ 56
6
/ 56
7
/ 56
8
/ 56
9
/ 56
10
/ 56
11
/ 56
12
/ 56
13
/ 56
14
/ 56
15
/ 56
16
/ 56
17
/ 56
18
/ 56
19
/ 56
20
/ 56
21
/ 56
22
/ 56
23
/ 56
24
/ 56
25
/ 56
26
/ 56
27
/ 56
28
/ 56
29
/ 56
30
/ 56
31
/ 56
32
/ 56
33
/ 56
34
/ 56
35
/ 56
36
/ 56
37
/ 56
38
/ 56
39
/ 56
40
/ 56
41
/ 56
42
/ 56
43
/ 56
44
/ 56
45
/ 56
46
/ 56
47
/ 56
48
/ 56
49
/ 56
50
/ 56
51
/ 56
52
/ 56
53
/ 56
54
/ 56
55
/ 56
56
/ 56
More Related Content
PDF
animation1.0
by
sleipnir002
PDF
Lisp Tutorial for Pythonista Day 6
by
Ransui Iso
PPTX
2014年の社内新人教育テキスト #2(関数型言語からオブジェクト指向言語へ)
by
Shin-ya Koga
PPTX
2021 10-12.linx device-tree
by
Shin-ya Koga
PDF
Destructive Call
by
Cryolite
PDF
Siv3Dで楽しむゲームとメディアアート開発
by
Ryo Suzuki
PDF
Interactive Music II SuperCollider入門 5 時間構造をつくる
by
Atsushi Tadokoro
PPTX
Node.js - sleep sort algorithm
by
takesako
animation1.0
by
sleipnir002
Lisp Tutorial for Pythonista Day 6
by
Ransui Iso
2014年の社内新人教育テキスト #2(関数型言語からオブジェクト指向言語へ)
by
Shin-ya Koga
2021 10-12.linx device-tree
by
Shin-ya Koga
Destructive Call
by
Cryolite
Siv3Dで楽しむゲームとメディアアート開発
by
Ryo Suzuki
Interactive Music II SuperCollider入門 5 時間構造をつくる
by
Atsushi Tadokoro
Node.js - sleep sort algorithm
by
takesako
What's hot
PDF
パッケージングの呼び声 Python Charity Talks in Japan 2021.02
by
Atsushi Odagiri
PDF
Interactive Music II - SuperCollider入門
by
Atsushi Tadokoro
PDF
Continuation with Boost.Context
by
Akira Takahashi
PDF
PHPコアから読み解くPHP5.5
by
Yahoo!デベロッパーネットワーク
PDF
PHPにおけるI/O多重化とyield
by
Yahoo!デベロッパーネットワーク
PPT
C++でHello worldを書いてみた
by
firewood
PDF
Canvas de shooting 制作のポイント
by
Yohei Munesada
PDF
Kyoto.pm 20120818-hogem
by
hogem
PDF
Html canvas shooting_and_performanceup
by
Yohei Munesada
PDF
Ansible troubleshooting 101_2021
by
Hideki Saito
PDF
pecoを使おう
by
Hideaki Miyake
PDF
Boost Tour 1.48.0 diff
by
Akira Takahashi
パッケージングの呼び声 Python Charity Talks in Japan 2021.02
by
Atsushi Odagiri
Interactive Music II - SuperCollider入門
by
Atsushi Tadokoro
Continuation with Boost.Context
by
Akira Takahashi
PHPコアから読み解くPHP5.5
by
Yahoo!デベロッパーネットワーク
PHPにおけるI/O多重化とyield
by
Yahoo!デベロッパーネットワーク
C++でHello worldを書いてみた
by
firewood
Canvas de shooting 制作のポイント
by
Yohei Munesada
Kyoto.pm 20120818-hogem
by
hogem
Html canvas shooting_and_performanceup
by
Yohei Munesada
Ansible troubleshooting 101_2021
by
Hideki Saito
pecoを使おう
by
Hideaki Miyake
Boost Tour 1.48.0 diff
by
Akira Takahashi
Viewers also liked
PPTX
TSP and Geocoding on R
by
sleipnir002
PDF
パターン認識 05 ロジスティック回帰
by
sleipnir002
PDF
パターン認識02 k平均法ver2.0
by
sleipnir002
PDF
パターン認識 04 混合正規分布
by
sleipnir002
PDF
Japan.r 2データベース
by
sleipnir002
PDF
パターン認識 08 09 k-近傍法 lvq
by
sleipnir002
PDF
パターン認識 第01章-判別能力の評価
by
sleipnir002
PDF
RとPythonによるデータ解析入門
by
Atsushi Hayakawa
PPTX
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
by
Katsuhiro Morishita
PDF
とある病んだ院生の体内時計(サーカディアンリズム)
by
. .
PDF
Hijiyama.R Entry session
by
考司 小杉
PDF
はじパタLT2
by
Tadayuki Onishi
PDF
RをAWSで使おう
by
Tohru Kobayashi
PDF
Stanで人類最強の男を決定する 2
by
Teito Nakagawa
PDF
Numacraw for r user(upload)
by
Teito Nakagawa
PDF
クラシックな機械学習の入門 8. クラスタリング
by
Hiroshi Nakagawa
PPTX
20131109 TokyoR#35 Rでネットワーク解析とGIS
by
Med_KU
PDF
Rで学ぶミニミニビッグデータ分析入門-第1回
by
Naruhiko Shiratori
PDF
StanTutorial
by
Teito Nakagawa
PDF
そろそろRStudioの話
by
Kazuya Wada
TSP and Geocoding on R
by
sleipnir002
パターン認識 05 ロジスティック回帰
by
sleipnir002
パターン認識02 k平均法ver2.0
by
sleipnir002
パターン認識 04 混合正規分布
by
sleipnir002
Japan.r 2データベース
by
sleipnir002
パターン認識 08 09 k-近傍法 lvq
by
sleipnir002
パターン認識 第01章-判別能力の評価
by
sleipnir002
RとPythonによるデータ解析入門
by
Atsushi Hayakawa
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
by
Katsuhiro Morishita
とある病んだ院生の体内時計(サーカディアンリズム)
by
. .
Hijiyama.R Entry session
by
考司 小杉
はじパタLT2
by
Tadayuki Onishi
RをAWSで使おう
by
Tohru Kobayashi
Stanで人類最強の男を決定する 2
by
Teito Nakagawa
Numacraw for r user(upload)
by
Teito Nakagawa
クラシックな機械学習の入門 8. クラスタリング
by
Hiroshi Nakagawa
20131109 TokyoR#35 Rでネットワーク解析とGIS
by
Med_KU
Rで学ぶミニミニビッグデータ分析入門-第1回
by
Naruhiko Shiratori
StanTutorial
by
Teito Nakagawa
そろそろRStudioの話
by
Kazuya Wada
Similar to How to use animation packages in R(Japanese)
PDF
Rの高速化
by
弘毅 露崎
PDF
10min r study_tokyor25
by
Nobuaki Oshiro
PDF
10min r study_tokyor25
by
Nobuaki Oshiro
PDF
Rでウォーリを探してみた
by
Kazuya Wada
PPT
K010 appstat201201
by
t2tarumi
PPTX
R超入門機械学習をはじめよう
by
幹雄 小川
PDF
R Markdownによるドキュメント生成と バージョン管理入門
by
nocchi_airport
PDF
Rでreproducible research
by
Shintaro Fukushima
PDF
Tokyo.R #19 発表資料 「Rで色々やってみました」
by
Masayuki Isobe
PDF
データ解析技術入門(R編)
by
Takumi Asai
PDF
Tokyor23 doradora09
by
Nobuaki Oshiro
PDF
Introduction to R
by
Yukihiro NAKAJIMA
PDF
Yamadai.Rデモンストレーションセッション
by
考司 小杉
PPT
12-11-30 Kashiwa.R #5 初めてのR Rを始める前に知っておきたい10のこと
by
Haruka Ozaki
PDF
~knitr+pandocではじめる~『R MarkdownでReproducible Research』
by
Nagi Teramo
PPT
R intro
by
yayamamo @ DBCLS Kashiwanoha
PPTX
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
by
Katsuhiro Morishita
PPTX
Nagoya.R #14 入門者講習
by
Yusaku Kawaguchi
PDF
R新機能抄出
by
Masafumi Okada
PPTX
20160723 オープンキャンパス資料
by
Takeo Kunishima
Rの高速化
by
弘毅 露崎
10min r study_tokyor25
by
Nobuaki Oshiro
10min r study_tokyor25
by
Nobuaki Oshiro
Rでウォーリを探してみた
by
Kazuya Wada
K010 appstat201201
by
t2tarumi
R超入門機械学習をはじめよう
by
幹雄 小川
R Markdownによるドキュメント生成と バージョン管理入門
by
nocchi_airport
Rでreproducible research
by
Shintaro Fukushima
Tokyo.R #19 発表資料 「Rで色々やってみました」
by
Masayuki Isobe
データ解析技術入門(R編)
by
Takumi Asai
Tokyor23 doradora09
by
Nobuaki Oshiro
Introduction to R
by
Yukihiro NAKAJIMA
Yamadai.Rデモンストレーションセッション
by
考司 小杉
12-11-30 Kashiwa.R #5 初めてのR Rを始める前に知っておきたい10のこと
by
Haruka Ozaki
~knitr+pandocではじめる~『R MarkdownでReproducible Research』
by
Nagi Teramo
R intro
by
yayamamo @ DBCLS Kashiwanoha
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
by
Katsuhiro Morishita
Nagoya.R #14 入門者講習
by
Yusaku Kawaguchi
R新機能抄出
by
Masafumi Okada
20160723 オープンキャンパス資料
by
Takeo Kunishima
How to use animation packages in R(Japanese)
1.
これからの可視化は動画の時代 ~Rでanimationパッケージ
で動画を作成する方法~ @sleipnir002 Tokyo.R#20
2.
自己紹介
@sleipnir002 •Tokyo.Rでパターン認識の発表をシリーズで やっています。 •職業:ITコンサル 自主規制 •データマイニングのIT業界への普及と促進の ために活動しています。 •ガイア好きです。 •好きなAKB48のメンバーはこじはるです。
3.
animation パッケージのご紹介
4.
パッケージ概要 Rのプロットを結合して、アニメーション形式で出力するパッケージ 1.
Rから複数のアニメーションフォーマットへの エクスポートをサポート →自分の望む形式に変換して、ホームページやレポート に埋め込みができる! 2. 統計教育用のサンプルアニメーションを含む →統計の勉強になる! これからは動画で可視化の時代!!
5.
animationを使って動画を作成してみよう! library(animation)
Package animation ani.options(outdir="/var/XXX/") オプションの設定 s<-function(x, k){x^3+k*x^2-5*x+4} ani.start() 録画開始 for(i in -30:30){ plot(s(-30:30, i), type="l", ylim=c(- 3次関数の係数を変更し 10000, 10000)) てプロット } ani.stop() 録画停止 HTML形式のファイルが作成されていることを確認する。
6.
インストール • install.packages(“animation”)だけでOK! • 以下のコマンドのインストールが必要 •
ImageMagick・・・画像処理用のコマンドラインツール $ sudo apt-get install imagemagick • SWF Tools・・・SWF生成用のコマンドラインツール $ sudo apt-get install libfreetype6-dev libgif-dev xpdf libjpeg8 libjpeg8-dev ←r-base-devを削除した。 $ wget http://www.swftools.org/swftools-0.9.1.tar.gz $ tar -zxvf swftools-0.9.1.tar.gz $cd swftools-0.9.1 $./configure $make $sudo make install OS:Ubuntu 10.10 64bitの場合
7.
出力形式 • HTML形式・・・ブラウザ上で再
生するページを作成 • GIF形式・・・GIFに出力 • SWF形式・・・FLASHに出力 • PDF形式・・・Texで埋め込み • 動画形式・・・mpeg4等に出力 • 動画をRのグラフィックデバイ ス上に作成することも可能。
8.
動画を作成してみる
9.
animationを使って動画を作成する3つの方法 A) savehoge()形式で特定フォーマットで保存 B) ani.start()形式でHTML形式で保存 C)
ani.record()で録画、ani.replayで再生を行う。
10.
*ソース1を参照
A)saveHTML 動画を閲覧できるHMTLページを作成する。 >saveHTML(expr={bisection.method()}, img.name="bi") >saveHTML(expr={newton.method()}, img.name="newton") • JSを使用してHTMLから動画を閲覧可能にする。 • exprで指定した手順でplotした画像を動画にする。 • img.nameの引数を保存する画像の拡張子に使用する。 • saveHTMLを複数回実行すると、ページ上にはHTMLが複数 表示される。 方程式の根を求めるアルゴリズムのデモ
11.
*ソース1を参照
A)saveGIF GIF形式の動画を作成する。 >saveGIF(expr={boot.iid()}, clean=TRUE, img.name="boot", movie.name="boot.gif") • ImageMagickのコマンドを使用して、動画を作成する。 • exprで指定した手順でplotした画像を動画にする。 • img.nameで指定した接頭辞で保存する。 • ファイルはオプションoutdirで指定したディレクトリに movie.nameの名前で保存される。 ブートストラップのデモ
12.
*ソース1を参照
A)saveSWF FLASH形式の動画を画像から作成する。 > saveSWF({expr=kmeans.ani(centers=4)},swftools=NULL, img.name="kmeans", swf.name="kmeans.swf") • SWF Toolsのpng2swfコマンドなどを使用して、画像をFLASH に変換する。 • exprで指定した手順でplotした画像を動画にする。 • img.nameで指定した接頭辞で保存する。 • ファイルはオプションoutdirで指定したディレクトリに swf.nameの名前で保存される。 K-means法の動きを表すアルゴリズムのデモ
13.
B)ani.start(), ani.stop()
HTMLによるアニメーションページを作成 >ani.start() >・・・ >ani.stop() デモは省略 • 自動的にoutdirにJSファイルをコピーして、start開始後、stop までに作成されたplotで動画を作成する。 • saveHTMLとは出力画面の形式が異なる。 • 指定したフォルダに必要なjavascriptファイルを出力するので 注意。
14.
*ソース2を参照
C)ani.record (), ani.replay() recordでカレントのデバイスを録画して、replayで再生する。 >for(i in 0:9){ + rbfsvm <- ksvm(x,y,kernel=rbfdot(sigma=1), C=1+i*20) + ani.record() + plot(rbfsvm,data=x,key.axes=axis(4, seq(-7, 7, by=1)), zlim=c(-7, 7)) +} >ani.replay() • ani.recordでカレントのデバイスの画像を保存して、記録する。 • ani.replayで記録した動画の再生を行う。 SVMの正則化のコストを大きくした時の挙動のデモ
15.
オプション
16.
ani.option(1)
>ani.option() or ani.option(“interval”) #オプション内容の確認 >ani.option(oopt) #デフォルトに戻す。 >ani.options(interval=0.5)#インターバルを0.5に設定 • interval・・・フレームの間隔(秒) • nmax・・・フレームの最大数 • ani.width,ani.height・・・画像の幅と高さ • ani.dev,ani.type・・・デバイス、画像の種類
17.
ani.option(2)
[hmtlfile] ・・・デフォルトのHTML出力ファイル [OUTDIR] [IMAGES] ・・・デフォルトの画像出力先フォルダ デフォルトの出力先フォルダ。特に指定 しなければ、tmpフォルダが使用される。 • outdir・・・デフォルトの出力先フォルダ • htmlfile・・・HTML出力(index.html) • images・・・作成した画像を含むフォルダ
18.
まとめ • animationパッケージでRで簡単に動画が作成
できるからみんな動画で可視化してみよう。 • animationパッケージで動画を作成する際の フォーマットはGIF,HTML,SWF,MPEGなど • 統計教育用アニメーションがいっぱいあるの で、暇な人は見てみよう。
19.
ソース1 #A)saveHoge関数のデモ #SaveHTML #2分割法で方程式を解く動画サンプル saveHTML(expr={bisection.method()}, img.name="bi") #ニュートン法で方程式を解く動画サンプル saveHTML(expr={newton.method()}, img.name="newton") #SaveGIF
ブートストラップのデモ動画サンプル saveGIF(expr={boot.lowess(cars, f=1, pch = 20, iter=20, xlab = "speed", ylab = "dist")}, clean=TRUE, img.name="boot", movie.name="boot.gif") #SaveSWF k-means法による動画の可視化 saveSWF({kmeans.ani(centers=3)},swftools=NULL,img.name="kmeans", swf.name="kmeans.swf")
20.
ソース2 #C)ani,record,ani.replay方式のデモ~SVMの正則化項を大きくしていった際の挙動の可視化 #ライブラリの読み込みとデータの生成 library(kernlab);library(mlbench) dat <- mlbench.2dnormals(400,
cl=2, r=sqrt(20), sd=2);x <- dat$x; y <- dat$classes #これまでの画像のクリアー ani.record(reset=TRUE) for(i in 0:9){ #SVMの正則化項のコストを大きくしながらモデルを作成 rbfsvm <- ksvm(x,y,kernel=rbfdot(sigma=1), C=1+i*20) plot(rbfsvm,data=x,key.axes=axis(1, seq(-i, 7, by=1)), zlim=c(-7, 7), sub=paste("C=", 1+i*20)) #直前のプロットを記録する。 ani.record() } #記録した画像を再生 ani.replay() *パターン認識 (Rで学ぶデータサイエンス 5) 共立出版(金森ほか, 2009)を参考に作成
21.
ソース3 #ハートの方程式 love<-"僕とお付き合いしてください"
x 0.01 (t 2 40t 1200) sin( t / 180) y 0.01 (t 2 40t 1200) cos( t / 180) retx<-function(t, d){d * 0.01 * (-(t^2)+40*t+1200)*sin(pi * t /180)} rety<-function(t){0.01 * (-(t^2)+40*t+1200)*cos(pi * t /180)} ani.options(outdir="/var/www/html/rtmp", interval = 0.05, nmax = 150) (0 t 60) saveGIF( expr={ #ハートの方程式を徐々に記述していく。 plot(retx(1, 1), rety(1), xlim=c(-15, 15), ylim=c(-10, 20), xlab="", ylab="") for(t in 2:60){ plot(c(retx(1:t, -1), retx(1:t, 1)), c(rety(1:t), rety(1:t)), xlim=c(-15, 15), ylim=c(-10, 20), main=, xlab="", ylab="") } #告白のを付け加えた状態で画像を固定する。 for(t in 1:30){ plot(c(retx(1:60, -1), retx(1:60, 1)), c(rety(1:60), rety(1:60)), xlim=c(-15, 15), ylim=c(-10, 20), main="", xlab="", ylab="") mtext(love, side = 3, line = -16, cex= 2, col="red") } }, movie.name="heart.gif" ) *ハートはhttp://www.mathematische-basteleien.de/heart.htmを参考に作成
22.
最後に
23.
こんな使い方はいかがでしょうか?
24.
Tokyo.R 第20回記念作品 「Rを巡る素敵な恋の物語」
25.
♪ DREAMS COMES TRUE
『LOVE LOVE LOVE』
26.
今からお話しするのは Rを巡る素敵な恋の物語
27.
この物語の主人公は
28.
Tokyo.Rに参加しているR君
29.
理系大学院生の彼は勉強熱心で
まじめな青年
30.
そしてRが大好き
31.
強いて挙げるとすると 彼の欠点はまじめすぎて奥手なところ
32.
そんな彼は毎回 Tokyo.Rに参加しています
33.
その理由はRの勉強をするため
34.
でも、彼にはTokyo.Rに参加する もう一つの理由がありました
35.
それはよくTokyo.Rに参加しているSちゃん
36.
彼はひそかに彼女に想いを よせいていたのでした
37.
奥手な彼は彼女のアドレスを 教えてもらったのですが、
38.
Rの話しかできずにいたのです
39.
そんなある日、
40.
彼は素敵なイケメンITコンサルさんの紹介で animationパッケージに出会いました
41.
「よし、これだ!」
42.
意を決したS君
43.
ある日、Sちゃんを 誘ってこう話しかけました
44.
「ねぇSちゃん、Rのプロットにサブタイトルを付け
たいんだけど、付け方がわからないから 教えてくれないかな」
45.
Sちゃんは答えました
46.
『あら、そんなの簡単だわ。』
47.
「ほんとに、じゃあこのソースコードに 付け加えてもらえるかな?」
48.
R君は自分のPCをSちゃんの前に
置きました
49.
『えーと、plotは・・・あっ・・・』
50.
Sちゃんはソースコード読み、
一瞬はっとします
51.
そして、彼女はそのソースコードに
sub=“yes”と書き加え、 二人はめでたく結ばれました。
52.
そのコードはanimation パッケージを使用していました
53.
そしてそのコードを実行すると・・・
54.
*ソース3を参照 ソース3を実行してみてね!!
55.
Fin
56.
animationで素敵なRライフを
Be happyWith animation ※今日の資料はコードも含めてblogにアップします。
Download