Rで解析:ggplot2でPCA結果をBiplotで表示「ggbiplot」パッケージ

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

ggplot2パッケージを利用して主成分分析の結果をBiplotで表示するパッケージの紹介です。

パッケージバージョンは0.55。実行コマンドはR version 4.2.2で確認しています。

スポンサーリンク

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

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

#パッケージのインストール
install.packages("devtools")
devtools::install_github("vqv/ggbiplot")

実行コマンド

詳細はコマンド、パッケージのヘルプを確認してください。

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

###データ例の作成#####
set.seed(1234)
TestData <- matrix(rnorm(1000), 200)
TestData <- as.data.frame(TestData)
#&#12487;&#12540;&#12479;&#12398;&#35519;&#25972;
TestData[1:67,] <- TestData[1:67,] + 1
TestData[68:135,] <- TestData[68:135,] + 2
TestData[136:200,] <- TestData[136:200,] + 3
#&#12464;&#12523;&#12540;&#12503;&#24773;&#22577;&#12434;&#20184;&#19982;
TestData <- cbind(c(rep("Group1", 67),
                    rep("Group2", 67),
                    rep("Group3", 66)),
                  TestData)
colnames(TestData) <- c("Group", paste0("ColName", seq(5)))
########

#stat&#12497;&#12483;&#12465;&#12540;&#12472;:prcomp&#12467;&#12510;&#12531;&#12489;&#12391;&#20027;&#25104;&#20998;&#20998;&#26512;
TestPrc <- prcomp(TestData[, 2:6], scale. = FALSE)

#biplot&#12398;&#20316;&#25104;:ggbiplot&#12467;&#12510;&#12531;&#12489;
#prcomp()&#12414;&#12383;&#12399;princomp()&#12398;&#32080;&#26524;&#12434;&#25351;&#23450;:pcobj&#12458;&#12503;&#12471;&#12519;&#12531;
#&#12503;&#12525;&#12483;&#12488;&#12377;&#12427;&#20027;&#25104;&#20998;&#12434;&#25351;&#23450;:choices&#12458;&#12503;&#12471;&#12519;&#12531;
#&#12464;&#12523;&#12540;&#12503;&#24773;&#22577;&#12434;&#25351;&#23450;:groups&#12458;&#12503;&#12471;&#12519;&#12531;
#&#12464;&#12523;&#12540;&#12503;&#27598;&#12398;&#30906;&#29575;&#26965;&#20870;&#12434;&#25551;&#20889;:ellipse&#12458;&#12503;&#12471;&#12519;&#12531;
#&#30456;&#38306;&#20870;&#12434;&#25551;&#20889;:circle&#12458;&#12503;&#12471;&#12519;&#12531;
#ggplot2&#12398;&#12467;&#12510;&#12531;&#12489;&#12364;&#21033;&#29992;&#21487;&#33021;&#12391;&#12377;
ggbiplot(pcobj = TestPrc, choices = 1:2, obs.scale = 1, var.scale = 1,
         groups = TestData[, 1], ellipse = TRUE, circle = TRUE) +
  scale_colour_manual(values = c("#FF0000", "black", "#00FF00")) +
  theme(legend.direction = "horizontal", legend.position = "top")

出力例

・ggbiplotコマンド

ggbiplot

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

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