Submit Search
ggplot2によるグラフ化@HijiyamaR#2
38 likes
19,735 views
N
nocchi_airport
ggplot2によるグラフ化@HijiyamaR#2
Data & Analytics
Read more
1 of 35
Download now
Downloaded 161 times
1
2
3
Most read
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Most read
25
26
27
28
29
30
31
32
Most read
33
34
35
More Related Content
PPTX
ggplot2再入門(2015年バージョン)
yutannihilation
KEY
ggplot2できれいなグラフ
Daisuke Ichikawa
PDF
ggplot2用例集 入門編
nocchi_airport
PDF
MICの解説
logics-of-blue
PDF
因果探索: 基本から最近の発展までを概説
Shiga University, RIKEN
PPTX
PILCO - 第一回高橋研究室モデルベース強化学習勉強会
Shunichi Sekiguchi
PDF
5分でわかるかもしれないglmnet
Nagi Teramo
PDF
アンサンブル木モデル解釈のためのモデル簡略化法
Satoshi Hara
ggplot2再入門(2015年バージョン)
yutannihilation
ggplot2できれいなグラフ
Daisuke Ichikawa
ggplot2用例集 入門編
nocchi_airport
MICの解説
logics-of-blue
因果探索: 基本から最近の発展までを概説
Shiga University, RIKEN
PILCO - 第一回高橋研究室モデルベース強化学習勉強会
Shunichi Sekiguchi
5分でわかるかもしれないglmnet
Nagi Teramo
アンサンブル木モデル解釈のためのモデル簡略化法
Satoshi Hara
What's hot
(20)
PPTX
【DL輪読会】Data-Efficient Reinforcement Learning with Self-Predictive Representat...
Deep Learning JP
PDF
[R勉強会][データマイニング] R言語による時系列分析
Koichi Hamada
PPTX
社会心理学者のための時系列分析入門_小森
Masashi Komori
PPTX
金融時系列のための深層t過程回帰モデル
Kei Nakagawa
PDF
【博士論文発表会】パラメータ制約付き特異モデルの統計的学習理論
Naoki Hayashi
PPTX
SHAP値の考え方を理解する(木構造編)
Kazuyuki Wakasugi
PDF
数式を使わずイメージで理解するEMアルゴリズム
裕樹 奥田
PDF
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
Shiga University, RIKEN
PDF
リクルート式 自然言語処理技術の適応事例紹介
Recruit Technologies
PDF
Bayes Independence Test - HSIC と性能を比較する-
Joe Suzuki
PPTX
【論文紹介】How Powerful are Graph Neural Networks?
Masanao Ochi
PDF
Stanコードの書き方 中級編
Hiroshi Shimizu
PDF
一般化線形モデル (GLM) & 一般化加法モデル(GAM)
Deep Learning Lab(ディープラーニング・ラボ)
PDF
科学と機械学習のあいだ:変量の設計・変換・選択・交互作用・線形性
Ichigaku Takigawa
PDF
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
SSII
PDF
はじめての「R」
Masahiro Hayashi
PPTX
【DL輪読会】時系列予測 Transfomers の精度向上手法
Deep Learning JP
PDF
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
Ken'ichi Matsui
PDF
Rで学ぶロバスト推定
Shintaro Fukushima
PDF
Devsumi 2018summer
Harada Kei
【DL輪読会】Data-Efficient Reinforcement Learning with Self-Predictive Representat...
Deep Learning JP
[R勉強会][データマイニング] R言語による時系列分析
Koichi Hamada
社会心理学者のための時系列分析入門_小森
Masashi Komori
金融時系列のための深層t過程回帰モデル
Kei Nakagawa
【博士論文発表会】パラメータ制約付き特異モデルの統計的学習理論
Naoki Hayashi
SHAP値の考え方を理解する(木構造編)
Kazuyuki Wakasugi
数式を使わずイメージで理解するEMアルゴリズム
裕樹 奥田
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
Shiga University, RIKEN
リクルート式 自然言語処理技術の適応事例紹介
Recruit Technologies
Bayes Independence Test - HSIC と性能を比較する-
Joe Suzuki
【論文紹介】How Powerful are Graph Neural Networks?
Masanao Ochi
Stanコードの書き方 中級編
Hiroshi Shimizu
一般化線形モデル (GLM) & 一般化加法モデル(GAM)
Deep Learning Lab(ディープラーニング・ラボ)
科学と機械学習のあいだ:変量の設計・変換・選択・交互作用・線形性
Ichigaku Takigawa
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
SSII
はじめての「R」
Masahiro Hayashi
【DL輪読会】時系列予測 Transfomers の精度向上手法
Deep Learning JP
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
Ken'ichi Matsui
Rで学ぶロバスト推定
Shintaro Fukushima
Devsumi 2018summer
Harada Kei
Ad
Recently uploaded
(8)
PDF
【QYResearch】グローバル磁性材料産業チェーンの構造分析と市場動向の詳細解説
QY Research株式会社
PDF
データモデラー視点で語るデータマネジメント入門~組織のデータ活用を成功に導くために~
Koichi Inami
PDF
【QYResearch】人形ロボット産業の市場構造と今後の発展方向に関する分析レポート
QY Research株式会社
PDF
【QYResearch】グローバルコネクタ市場の動向と将来展望に関する詳細な分析報告
QY Research株式会社
PDF
【初心者向け】生成AI SimonW/LLMとOllama・llamafile無料APIでコマンドラインをAI革命するセミナー。CPUでもGPUでも。Ne...
Netwalker lab kapper
PDF
【QYResearch】グローバル農業機械市場の動向分析と成長戦略に関する総合調査報告
QY Research株式会社
PDF
XCMSを用いた質量分析データ処理_BioCAsia2021_yamamoto.pdf
h_yama2396
PDF
【QYResearch】急拡大する医療機器市場における主要企業の動向と競争環境分析
QY Research株式会社
【QYResearch】グローバル磁性材料産業チェーンの構造分析と市場動向の詳細解説
QY Research株式会社
データモデラー視点で語るデータマネジメント入門~組織のデータ活用を成功に導くために~
Koichi Inami
【QYResearch】人形ロボット産業の市場構造と今後の発展方向に関する分析レポート
QY Research株式会社
【QYResearch】グローバルコネクタ市場の動向と将来展望に関する詳細な分析報告
QY Research株式会社
【初心者向け】生成AI SimonW/LLMとOllama・llamafile無料APIでコマンドラインをAI革命するセミナー。CPUでもGPUでも。Ne...
Netwalker lab kapper
【QYResearch】グローバル農業機械市場の動向分析と成長戦略に関する総合調査報告
QY Research株式会社
XCMSを用いた質量分析データ処理_BioCAsia2021_yamamoto.pdf
h_yama2396
【QYResearch】急拡大する医療機器市場における主要企業の動向と競争環境分析
QY Research株式会社
Ad
ggplot2によるグラフ化@HijiyamaR#2
1.
#HijiyamaR 2015/5/23 1 紀ノ定保礼 ggplot2によるグラフ化
2.
紀ノ定 保礼 大阪大学大学院人間科学研究科 研究領域:認知心理学,交通心理学,人間工学 普段のRの用途 データ処理(2008年~) 分析(2011年~) 描画(2015年~) 自己紹介 2
3.
可視化ツールとしてのggplot2の紹介 ①すでに要約されたデータをグラフ化する 例:A群は平均3点,B群は平均5点(t(19)=3.25,p<.05) 慣習的に行われる,文字 → 図
の変換を補助する役割 ②探索的に,変数(間の関係)を理解する ごちゃごちゃしたデータ(Row data)を用いる ことも多い 変数を入れ替えやすいこと 複数の変数を同時に表示しやすいこと ③データを視覚的に要約する 本日の発表の目的 3 が重要
4.
可視化ツールとしてのggplot2の紹介 ①すでに要約されたデータをグラフ化する 例:A群は平均3点,B群は平均5点(t(19)=3.25,p<.05) 慣習的に行われる,文字 → 図
の変換を補助する役割 ②探索的に,変数(間の関係)を理解する ごちゃごちゃしたデータ(Row data)を用いる ことも多い 変数を入れ替えやすいこと 複数の変数を同時に表示しやすいこと ③データを視覚的に要約する 本日の発表の目的 4 が重要
5.
5 サンプルデータ:diamonds 重さ 質 (5段階) 色 (7段階) 透明度 (8段階) 価格 長さ(mm) 幅(mm) 奥行(mm) ggplot2パッケージ内に入っています(53940行×10列)
6.
いったん500行に減らしておきましょう 6 データが多いもので… library(ggplot2) diamonds2 <- diamonds[sample(nrow(diamonds),500),] ※注)ggplot2の前にdplyr及びplyrパッケージをロードする 場合は、必ずplyr
→ dplyrの順に
7.
従来のbaseパッケージで描画する場合 7 重さと価格の関係をみる plot(diamonds2$carat, diamonds2$price)
8.
8 せめて,質(5段階)別に関係を理解したい 出来ますが… 自分で各水準を定義する 必要あり plot(diamonds2$carat,diamonds2$price, pch=21,bg=c("yellow","red","green","blue","pink")[diamonds$cut])
9.
要請①:質ではなく,透明度で区別したい 9 変数の交換 重さ 質 (5段階) 色 (7段階) 透明度 (8段階) 価格 長さ(mm) 幅(mm) 奥行(mm)
10.
10 出来ますが… 水準数が増えた分, 塗り分ける色を 改めて定義する必要 plot(diamonds2$carat,diamonds2$price, pch=21,bg=c("yellow","red","green","blue","pink", "brown","lightblue","black")[diamonds$clarity])
11.
要請②:質と色と透明度で区別したい 11 変数の追加 重さ 質 (5段階) 色 (7段階) 透明度 (8段階) 価格 長さ(mm) 幅(mm) 奥行(mm)
12.
基準(要因)の数 水準(条件)の数 ・・・が増えるにしたがい, 「区別の仕方」も定義する必要 例:質(5段階)と色(7段階)と透明度(8段階)で 区 別したい 5 +
7 + 8 = 20通りの指定 12 想像がつくと思いますが…
13.
13 変数が増えるほど大変… 記号 サイズ 色 plot(diamonds2$carat,diamonds2$price, pch=c(3,8,15,16,17)[diamonds$cut], cex=c(1,1.25,1.5,1.75,2,2.25,2.5)[diamonds$color], col=c("royalblue","cyan","purple","green3","orange", "brown","magenta","gray")[diamonds$clarity])
14.
14 そこでggplot2 packageの出番
15.
15 重さと価格の関係をみる どのような形式で描画するか (pointなら点) ggplot(diamonds2,aes(y=price,x=carat))+ geom_point() データフレーム aes()内で, 各軸の変数や データの弁別基準を 指定
16.
16 質(5段階)別に,重さと価格の関係をみる 配色もさることながら, コードがすっきり! ggplot(diamonds2,aes(y=price,x=carat,color=cut))+ geom_point() 弁別基準はaes()内に
17.
要請①:質ではなく,透明度で区別したい 17 変数の交換 重さ 質 (5段階) 色 (7段階) 透明度 (8段階) 価格 長さ(mm) 幅(mm) 奥行(mm)
18.
18 確かに,塗分け基準が 変わっている ggplot(diamonds2,aes(y=price,x=carat,color=clarity))+ geom_point()
19.
要請②:質と色と透明度で区別したい 19 変数の追加 重さ 質 (5段階) 色 (7段階) 透明度 (8段階) 価格 長さ(mm) 幅(mm) 奥行(mm)
20.
20 方法その1 確かに,弁別基準が 増えている ggplot(diamonds2, aes(y=price,x=carat, color=color, size=clarity, shape=cut))+ geom_point()
21.
21 小さくて分かりにくいと思うので,拡大すると…
22.
22 小さくて 分かりにくいと思うので, 一部を拡大すると…
23.
レイヤーを重ねて図を調整 例(もちろん他にも指定可能) 23 描画の仕組み ggplot(iris,aes(y=Petal.Length,x=Sepal.Length,color=Species))+ geom_point()+ theme_bw()+ ylim(0,10)+ theme(axis.text.x=element_text(size=15), axis.text.y=element_text(size=15)) 基本レイヤー(データ指定) プロットの仕方の指定 背景の指定 軸目盛の指定 軸の書式の指定
24.
24 方法その2(FACETを用いる) ggplot(diamonds2,aes(y=price,x=carat,color=color))+ geom_point()+ facet_wrap(cut~clarity)
25.
25 小さくて見えないと思うので拡大
26.
可視化ツールとしてのggplot2の紹介 ①すでに要約されたデータをグラフ化する 例:A群は平均3点,B群は平均5点(t(19)=3.25,p<.05) 慣習的に行われる,文字 → 図
の変換を補助する役割 ②探索的に,変数(間の関係)を理解する ごちゃごちゃしたデータ(Row data)を用いる ことも多い 変数を入れ替えやすいこと 複数の変数を同時に表示しやすいこと ③データを視覚的に要約する 本日の発表の目的 26 が重要
27.
27 たとえデータが53940行もあったって 重さ 質 (5段階) 色 (7段階) 透明度 (8段階) 価格 長さ(mm) 幅(mm) 奥行(mm)
28.
例えば,質(5段階)別に価格の平均をみたい 28 一気に視覚的に要約 ggplot(diamonds,aes(y=price, x=cut))+ stat_summary(fun.y=mean, geom="bar")
29.
29 例えば,質と透明度別に価格の平均をみたい ggplot(diamonds,aes(y=price,x=cut,fill=clarity))+ stat_summary(fun.y=mean,geom="bar") ggplot(diamonds,aes(y=price,x=cut,fill=clarity))+ stat_summary(fun.y=mean,geom="bar",position= "dodge")
30.
あっという間 30 色セットを変えたくなったら
31.
31 ggplot(diamonds,aes(y=price,x=clarity,group=cut,color=cut))+ stat_summary(fun.y=mean,geom="point") レイヤーを重ね描き出来るということは… ggplot(diamonds,aes(y=price,x=clarity,group=cut,color=cut))+ stat_summary(fun.y=mean,geom="line")
32.
32 レイヤーの重ね描きの成せるわざ ggplot(diamonds,aes(y=price,x=clarity,group=cut,color=cut))+ stat_summary(fun.y=mean,geom="point")+ stat_summary(fun.y=mean,geom="line")
33.
33 エラーバーだってあっという間 53940行×10列のデータも, 数行でここまで仕上げることが出来る
34.
箱ひげ図 平均値
各計測値 34 代表値だけでなく,各計測値も重畳可能 ggplot(data=iris,aes(y=Sepal.Length,x=Species))+ geom_boxplot()+ stat_summary(fun.y=mean,geom="point",color="red")+ geom_jitter(position=position_jitter()) + +
35.
35
Download