Как заменить очень значимые значения p на p <0,001? - PullRequest
0 голосов
/ 18 октября 2019

Я сделал график рассеяния с линией регрессии и коэффициентами и получил очень значимое p. Можно ли заменить значение p, автоматически предоставленное R (1.6e-5), на p <0,001? </p>

Вот мой код:

CorFrame2 <- data.frame(FFR2,iFR2)
ggplot(CorFrame2,aes(x=iFR2,y=FFR2))+
... +
stat_cor(aes(label = paste(..rr.label.., ..p.label.., sep = "~`,`~")),
       label.x = 0.20,label.y = 0.90,size=5)

1 Ответ

0 голосов
/ 18 октября 2019

ggpubr::stat_cor создает строку с именем ..p.label.. - мы можем преобразовать ее в число, оценить, является ли она <0,001, и использовать ее для переопределения значения в операторе <code>if_else:

ggplot(mtcars,aes(x=wt,y=mpg))+
  geom_point() +
  ggpubr::stat_cor(
    aes(label = paste(..rr.label..,
                      if_else(readr::parse_number(..p.label..) < 0.001, 
                              "p<0.001", ..p.label..), sep = "~`,   `~")),
           label.x = 0.20,label.y = 0.90,size=5)

enter image description here

То же самое с ggplot(mtcars,aes(x=wt,y=qsec))+, что менее коррелирует:

enter image description here

...