ggplot2で統計情報を一緒にプロットするのに便利なパッケージの紹介です。パッケージには相関をヒートマップで表現するコマンドもあります。詳しくは下記URLをご確認ください。
ggstatsplot: ggplot2 Based Plots with Statistical Details
https://indrajeetpatil.github.io/ggstatsplot/
パッケージバージョンは0.9.1。実行コマンドはwindows 11のR version 4.1.2で確認しています。
パッケージのインストール
下記コマンドを実行してください。
#パッケージのインストール
install.packages("ggstatsplot")
コマンドの紹介
詳細はコマンド、パッケージのヘルプを確認してください。
#パッケージの読込み
library("ggstatsplot")
#コマンド例実行に必要なパッケージ
#PMCMRplusパッケージがなければインストール
if(!require("PMCMRplus", quietly = TRUE)){
install.packages("PMCMRplus");require("PMCMRplus")
}
#ggsideパッケージがなければインストール
if(!require("ggside", quietly = TRUE)){
install.packages("ggside");require("ggside")
}
###データ例の作成#####
n <- 60
TestData <- data.frame("Group" = rep(paste0("Group", 1:3), each = 20),
"Data1" = sample(rnorm(500), n, replace = TRUE),
"Data2" = sample(rnorm(500), n, replace = TRUE),
"Letter" = sample(LETTERS[1:3], n, replace = TRUE))
TestData[, 2] <- TestData[, 2] + rep(c(0, .8, .3), each = 20)
TestData[, 3] <- TestData[, 3] + rep(c(0, 4, 10), each = 20)
#構造確認
#str(TestData)
########
#統計情報がある箱ひげ図,バイオリンプロットの作成:ggbetweenstatsコマンド
#グラフの設定:plot.typeオプション;"box","violin","boxviolin"
#分布の仮説:typeオプション;"parametric","nonparametric","robust","bayes"
#p値の調整法:"p.adjust.method","holm","hochberg","hommel","bonferroni",
#"BH","BY","fdr","none"
#表示する小数点の桁数:kオプション
ggbetweenstats(data = TestData, x = Group, y = Data1,
pairwise.comparisons = TRUE,
pairwise.annotation = "p.value",
pairwise.display = "all",
plot.type = "boxviolin", messages = FALSE,
k = 2, p.adjust.method = "holm")
#統計情報が散布図の作成:ggscatterstatsコマンド
#相関の計算方法を指定:type;"parametric","pearson","robust","bayes"
ggscatterstats(data = TestData, x = Data1, y = Data2,
type = "robust", messages = FALSE,
centrality.para = "median")
#カテゴリ変数の円グラフを作成:grouped_ggpiestatsコマンド
#カテゴリ変数を指定:mainオプション
#グループ指標を指定:grouping.varオプション
#ラベル内容:slice.labelオプション;"percentage","counts","both"
grouped_ggpiestats(data = TestData, x = Letter, main = Letter,
grouping.var = Group, slice.label = "both")
出力例
・ggbetweenstatsコマンド

・ggscatterstatsコマンド

・grouped_ggpiestatsコマンド

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