Rで解析:変数の関係をいろいろ表現してみませんか?「corrgram」パッケージを再紹介

Rの解析に役に立つ記事
スポンサーリンク

「dendextend」パッケージでも利用した、「corrgram」パッケージの紹介です。変数間の関係を数値だけでなく色パレット、円グラフなどで表現することができます。相関を図で表現する方法には悩むところですが、本パッケージを利用することで解決するのではないでしょうか。1度紹介したことがありますが、有用なパッケージなので改めて紹介します。

・デンドログラム描写の決定版!「dendextend」パッケージの紹介
 https://www.karada-good.net/analyticsr/r-25/

パッケージバージョン1.8。R version 3.2.0でコマンドを確認しています。

スポンサーリンク

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

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

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

実行コマンドの紹介

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

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

#####準備#####################
#データ例の作成
a <- sample(1:100, 100, replace = FALSE)
TestData <- data.frame(Data1 = a,
                       Data2 = -a,
                       Data3 = c(a[1:80], sample(210:230, 20, replace = TRUE)),
                       Data4 = a,
                       Data5 = sample(150:180, 100, replace = TRUE))
##############################

#cor.methodオプション
#"pearson(初期値)", "spearman", "kendall"の設定が可能

#col.regionsオプション
#panel.pie,panel.shade,panel.barの色をcolorRampPaletteコマンドで設定

######################各panelに設定可能なオプション###################
#全体:panel,下部:lower.panel,上部:upper.panelオプションに設定可能な内容
#panel.pts:散布図
#panel.pie:円グラフ
#panel.shade:斜線入りのタイル
#panel.bar:棒グラフ
#panel.ellipse:楕円とloess平滑化曲線
#panel.conf:ピアソン相関と信頼区間("spearman", "kendall"は適応されません)

#text.panelオプションに設定可能な内容
#初期値で設定されています,NULLで何も描写しない
#panel.txt:行名

#diag.panelオプションに設定可能な内容
#panel.minmax:最小値最大値を表示
#panel.density:密度分布を表示
######################################################################

#色の設定
#並び順は負から正の相関
#例の紐,ヘスティア,リリカル・アーデ髪色のダンまちカラー
Danmchi <- colorRampPalette(c("#4b61ba", "#505457", "#a87963"))
#シャーロットカラー
Charlotte <- colorRampPalette(c("#EEFFFF", "#FFFBFF", "#EEE0FF"))

#下部を斜線入りのタイルで表示
corrgram(TestData, cor.method = "pearson", lower.panel = panel.shade, upper.panel = panel.conf,
         text.panel = NULL, diag.panel = panel.density, main = "Danmchi Color",
         col.regions = Danmchi)

#下部を円グラフで表示
corrgram(TestData, cor.method = "pearson", lower.panel = panel.pie, upper.panel = panel.conf,
         text.panel = panel.txt, diag.panel = panel.density, main = "Charlotte Color",
         col.regions = Charlotte)

出力例

・下部を斜線入りのタイルで表示

corrgram2

・下部を円グラフで表示

panel.pie2

少しでも、あなたの解析が楽になりますように!!

タイトルとURLをコピーしました