R 如何将相关矩阵显示为百分比

R 如何将相关矩阵显示为百分比,r,correlation,ggcorrplot,R,Correlation,Ggcorrplot,我试图以百分比的形式显示相关性标签,而不是在数字-1和1之间显示它们。我可以使用软件包ggcorrplot来实现这一点,但是这样做会失去使用颜色托盘显示它们的能力,而只使用灰色单元格颜色来显示它们。这就是它的样子 我可以使用软件包ggcorrplot来实现这一点,但是这样做会失去用彩色托盘显示它们的能力 #if(!require(devtools)) install.packages("devtools") #devtools::install_github("kassambara/ggcor

我试图以百分比的形式显示相关性标签,而不是在数字-1和1之间显示它们。我可以使用软件包
ggcorrplot
来实现这一点,但是这样做会失去使用颜色托盘显示它们的能力,而只使用灰色单元格颜色来显示它们。这就是它的样子

我可以使用软件包
ggcorrplot
来实现这一点,但是这样做会失去用彩色托盘显示它们的能力

#if(!require(devtools)) install.packages("devtools")
#devtools::install_github("kassambara/ggcorrplot")
library(ggcorrplot)
corr <- round(cor(test3),3)
corr <- corr * 100
ggcorrplot(corr, hc.order = TRUE, type = "lower",
           lab = TRUE, colors = c("blue", "white", "red"))

#如果(!require(devtools))安装.packages(“devtools”)
#devtools::install_github(“kassambara/ggcorrplot”)
图书馆(GGP)

你为什么想要一个百分比?相关系数不是一个比例,所以仅仅乘以100是没有意义的。例如,值为零并不意味着0%。@neilfws如果两个变量之间的相关性为0.5,这不意味着它们是50%correlated@neilfws这是正确的。如果没有,您应该执行
corr=round(cor(test3)^2,3)
@AnalyticsTeam,
cor
(默认情况下)为您提供皮尔逊相关系数(
r
)。如果你将其平方,你会得到
@d.b。非常感谢你的帮助。非常感谢。非常感谢您的回复。有没有一种方法可以将
%
粘贴到dThanks的value列中?对于响应来说,这种方法非常有效。这正是我想要的
corr <- round(cor(mtcars)^2,3)
corr <- corr * 100

diag(corr) = NA
corr[upper.tri(corr)] = NA

library(reshape2)
d = melt(corr)
d = d[!is.na(d$value),]

library(ggplot2)
ggplot(d, aes(x = Var1,
              y = Var2,
              fill = value,
              label = ifelse(is.na(value), "", paste0(value,"%")))) +
    geom_tile(color = "white") +
    scale_fill_gradientn(colors = c("green", "white", "red"), na.value = NA) +
    geom_text() +
    theme_bw()