【问题标题】:corrplot causing weird errorcorrplot 导致奇怪的错误
【发布时间】:2015-02-17 00:11:39
【问题描述】:

我在下面定义了两个集合矩阵:

它们包含来自两个变量之间 t 检验的 p 值(我知道这是不好的统计做法)

我正在尝试使用 corrplot 包中的相关图来绘制它们

但是,当我使用以下行时:

corrplot(weird, insig = "p-value", p.mat = weird, type = "lower", sig.level = 1-0.95, method = "circle", is.corr = FALSE,  cl.lim=c(0,1), tl.offset=0.4)

正常矩阵显示正确,但奇怪的矩阵没有。 这让我很沮丧,我已将问题缩小到 insig="p-value" 参数,因为 corrplot 函数在没有它的情况下按预期工作。

weird<-structure(c(2.22044604925031e-16, 0.018443376602325, 2.12390642555483e-12, 
2.22044604925031e-16, 0.018443376602325, 2.22044604925031e-16, 
2.22044604925031e-16, 2.22044604925031e-16, 2.12390642555483e-12, 
2.22044604925031e-16, 3.00501193636783e-06, 2.5333487645982e-12, 
2.22044604925031e-16, 2.22044604925031e-16, 2.5333487645982e-12, 
0.0197044105270931), .Dim = c(4L, 4L), .Dimnames = list(NULL, 
    NULL))

normal<-structure(c(0.34190041513821, 0.957047560166067, 0.680056137259229, 
0.00101879090792332, 1.2138613135621e-09, 0.406147270030259, 
0.957047560166067, 0.343145355714736, 0.157301364839312, 0.0223978064844035, 
2.92279774741867e-07, 0.904700589348579, 0.680056137259229, 0.157301364839312, 
0.620933486276745, 0.000609313754058382, 2.10803751235147e-10, 
0.411208816692722, 0.00101879090792332, 0.0223978064844035, 0.000609313754058382, 
8.78613655419196e-05, 9.15187128142626e-12, 0.197743409064612, 
1.2138613135621e-09, 2.92279774741867e-07, 2.10803751235147e-10, 
9.15187128142626e-12, 0.00179242617730144, 0.0159636230788393, 
0.406147270030259, 0.904700589348579, 0.411208816692722, 0.197743409064612, 
0.0159636230788393, 1.5372324857583e-07), .Dim = c(6L, 6L), .Dimnames = list(
    NULL, NULL))

奇怪的

正常的

【问题讨论】:

  • 据我了解,corrplot 旨在以矩阵格式绘制相关系数,可选择使用相关的 p 值(p.mat 选项)。那你为什么要绘制weird,因为它们是 p 值?
  • 我只是想以图形形式显示 t 检验的 p 值的大小。我发现 corrplot 有一个符合我想要的图形显示。根据我的阅读,这就是为什么有 corrplot( ..., is.corr = FALSE) 选项
  • 然后尝试绘制学生的 t-test 的值,与它们的 p 值相关联,即两个不同的矩阵,但具有相同的维度。
  • 嗯,我不认为那是我想要做的。 p 值定义了圆的大小,然后那些 p 值超过一定数字 (0.05) 的位置得到它们的 p 值,写在圆的顶部。
  • 我还是不明白weird 有什么奇怪的地方。这个矩阵的几乎所有值都是零。

标签: r r-corrplot


【解决方案1】:

好的,我已经解决了。

没有任何 p 值大于sig.level 要求的值,它们都小于 0.05。一旦我将一个值编辑为大于 0.05,它就会起作用

例如。

weird[1,1] <- 0.1
corrplot(weird)

作品

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-03
    • 1970-01-01
    • 2021-04-10
    • 2015-01-03
    • 1970-01-01
    • 2011-04-13
    • 2010-12-11
    • 1970-01-01
    相关资源
    最近更新 更多