R GGally::ggpairs - 如何通过 BH 进行调整并修改星号 (*) 显着性水平?

问题描述

我通常提供一个简单的相关矩阵图作为使用 psych::corr.testcorrplot 的相关分析的输出

现在我需要附上更详细的密度矩阵图和斜率散点图,以便同事能够更好地解释原始图。

对于后一个目的,我使用 Ggally::ggpairs,它提供了我所需要的一切。我的问题是我似乎无法指定与 psych::corr.testcorrplot...

完全相同的详细信息

通过mtcars查看我的 MWE:

我首先使用 Pearson 相关性和 BH 生成相关性和 pvalue 矩阵以进行调整。

data(mtcars)
mtcars
correlation_result <- psych::corr.test(mtcars[,1:7],method="pearson",adjust=mymethod,alpha=.05)
correlation_matrix <- correlation_result$r
pvalue_matrix <- correlation_result$p

然后我生成我原来的简单情节;我只想为分别低于 0.05 和 0.01 的 p 值显示 ***

#1
Grdevices::pdf(file="test1.pdf",height=10,width=10)
corrplot::corrplot(correlation_matrix,p.mat=pvalue_matrix,sig.level=c(0.01,0.05),method="circle",type="upper",insig="label_sig",pch.cex=2,order="original",pch.col="white",tl.col="black",tl.pos="td",tl.cex=2,cl.cex=2,diag=FALSE,mar=c(0,2,2))
Grdevices::dev.off()

我得到了这个情节,这正是我需要的:

test1

最后,我用 Ggally::ggpairs 绘制了详细的图,但有几个细节我无法指定:

  1. 虽然我可以指定 Pearson 相关性,但没有用于 BH p 值调整的 adjust 参数
  2. 显示的星号仅遵循以下标准,我似乎无法使用 stars 参数更改它:*** 如果 p 值 ** 如果 p 值 * 如果 p 值

我使用此代码

.

这会产生以下图:

test2

从美学上讲,这正是我所需要的,但显示的显着性与我的原始图不符...我希望能够调整 p 值,并仅显示我 0.05 和 0.01 的 2 个截止值的显着性。 . 有没有办法做到这一点(最好使用 #2 Grdevices::pdf(file="test2.pdf",height=15,width=15) print( Ggally::ggpairs(mtcars,columns=1:7,lower=list(continuous=Ggally::wrap("smooth",alpha=0.5,size=3)),diag=list(continuous=Ggally::wrap("densityDiag",alpha=0.5)),upper=list(continuous=Ggally::wrap("cor",stars=TRUE,size=6))) + ggplot2::theme_light() + ggplot2::theme(axis.text=ggplot2::element_text(size=15),strip.text=ggplot2::element_text(size=20,face="bold")) ) Grdevices::dev.off() )?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)