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&#12458;&#12503;&#12471;&#12519;&#12531;
#"pearson(&#21021;&#26399;&#20516;)", "spearman", "kendall"&#12398;&#35373;&#23450;&#12364;&#21487;&#33021;

#col.regions&#12458;&#12503;&#12471;&#12519;&#12531;
#panel.pie,panel.shade,panel.bar&#12398;&#33394;&#12434;colorRampPalette&#12467;&#12510;&#12531;&#12489;&#12391;&#35373;&#23450;

######################&#21508;panel&#12395;&#35373;&#23450;&#21487;&#33021;&#12394;&#12458;&#12503;&#12471;&#12519;&#12531;###################
#&#20840;&#20307;:panel,&#19979;&#37096;:lower.panel,&#19978;&#37096;:upper.panel&#12458;&#12503;&#12471;&#12519;&#12531;&#12395;&#35373;&#23450;&#21487;&#33021;&#12394;&#20869;&#23481;
#panel.pts:&#25955;&#24067;&#22259;
#panel.pie:&#20870;&#12464;&#12521;&#12501;
#panel.shade:&#26012;&#32218;&#20837;&#12426;&#12398;&#12479;&#12452;&#12523;
#panel.bar:&#26834;&#12464;&#12521;&#12501;
#panel.ellipse:&#26965;&#20870;&#12392;loess&#24179;&#28369;&#21270;&#26354;&#32218;
#panel.conf:&#12500;&#12450;&#12477;&#12531;&#30456;&#38306;&#12392;&#20449;&#38972;&#21306;&#38291;("spearman", "kendall"&#12399;&#36969;&#24540;&#12373;&#12428;&#12414;&#12379;&#12435;)

#text.panel&#12458;&#12503;&#12471;&#12519;&#12531;&#12395;&#35373;&#23450;&#21487;&#33021;&#12394;&#20869;&#23481;
#&#21021;&#26399;&#20516;&#12391;&#35373;&#23450;&#12373;&#12428;&#12390;&#12356;&#12414;&#12377;,NULL&#12391;&#20309;&#12418;&#25551;&#20889;&#12375;&#12394;&#12356;
#panel.txt:&#34892;&#21517;

#diag.panel&#12458;&#12503;&#12471;&#12519;&#12531;&#12395;&#35373;&#23450;&#21487;&#33021;&#12394;&#20869;&#23481;
#panel.minmax:&#26368;&#23567;&#20516;&#26368;&#22823;&#20516;&#12434;&#34920;&#31034;
#panel.density:&#23494;&#24230;&#20998;&#24067;&#12434;&#34920;&#31034;
######################################################################

#&#33394;&#12398;&#35373;&#23450;
#&#20006;&#12403;&#38918;&#12399;&#36000;&#12363;&#12425;&#27491;&#12398;&#30456;&#38306;
#&#20363;&#12398;&#32016;,&#12504;&#12473;&#12486;&#12451;&#12450;,&#12522;&#12522;&#12459;&#12523;&#12539;&#12450;&#12540;&#12487;&#39658;&#33394;&#12398;&#12480;&#12531;&#12414;&#12385;&#12459;&#12521;&#12540;
Danmchi <- colorRampPalette(c("#4b61ba", "#505457", "#a87963"))
#&#12471;&#12515;&#12540;&#12525;&#12483;&#12488;&#12459;&#12521;&#12540;
Charlotte <- colorRampPalette(c("#EEFFFF", "#FFFBFF", "#EEE0FF"))

#&#19979;&#37096;&#12434;&#26012;&#32218;&#20837;&#12426;&#12398;&#12479;&#12452;&#12523;&#12391;&#34920;&#31034;
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)

#&#19979;&#37096;&#12434;&#20870;&#12464;&#12521;&#12501;&#12391;&#34920;&#31034;
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をコピーしました