Cet article décrit comment créer une matrice de corrélation interactive dans R. Vous apprendrez deux approches différentes:
- Utilisation du package R heatmaply
- Utilisation de la combinaison des packages R
ggcorrplot
etplotly
.
Sommaire:
Prérequis
Installer les packages R nécessaires:
install.packages("plotly")
install.packages("heatmaply")
install.packages("ggcorrplot")
Préparation des données
df <- mtcars
Heatmaps de corrélation utilisant heatmaply
Charger les packages R
library(heatmaply)
Heatmap de base de la matrice de corrélation
Utilisez les arguments k_col
et k_row
pour spécifier le nombre de groupes désirés pour colorer les branches du dendrogramme dans les colonnes et les lignes, respectivement.
heatmaply_cor(
cor(df),
xlab = "Features",
ylab = "Features",
k_col = 2,
k_row = 2
)
Modifier la taille du point en fonction des p-values du test de corrélation
# Calculer les coefficients de corrélation
cor.coef <- cor(df)
# Calculer les p-values de corrélation
cor.test.p <- function(x){
FUN <- function(x, y) cor.test(x, y)[["p.value"]]
z <- outer(
colnames(x),
colnames(x),
Vectorize(function(i,j) FUN(x[,i], x[,j]))
)
dimnames(z) <- list(colnames(x), colnames(x))
z
}
p <- cor.test.p(df)
# Créer la Heatmap
heatmaply_cor(
cor.coef,
node_type = "scatter",
point_size_mat = -log10(p),
point_size_name = "-log10(p-value)",
label_names = c("x", "y", "Correlation")
)
Heatmaps de corrélation utilisant ggcorrplot
Charger les packages R
library(ggcorrplot)
Heatmap statique de la matrice de corrélation
# Calculer une matrice de corrélation
corr <- round(cor(df), 1)
# Calculer une matrice de p-values de corrélation
p.mat <- cor_pmat(df)
# Visualiser le triangle inférieur de la matrice de corrélation
# Barrer les coefficients on significatifs
corr.plot <- ggcorrplot(
corr, hc.order = TRUE, type = "lower", outline.col = "white",
p.mat = p.mat
)
corr.plot
Rendre la Heatmap interactive
library(plotly)
ggplotly(corr.plot)
`
Version: English
No Comments