Добавьте тестовое P-значение Спирмена в ggplot, используя stat_fit_glance
Я хотел бы добавить p.value корреляционного теста Спирмена на моем ggplot.
У меня есть фрейм данных, Global.log.CD8. Плотность:
head(Global.log.CD8.Density)
ID Global.log.CD8.Density Signature Weight
IM_186 0.124566 s1 0.56427854
IM_152 5.041160 s1 0.28232970
IM_172 1.385508 s1 0.20986138
IM_148 6.067057 s1 0.42067503
IM_146 2.278153 s1 0.23883911
IM_174 5.481756 s1 0.05284056
Есть 7 Signatures
, s1-s7, для каждого ID
с разными Weight
ценности. Я создал грани точечной диаграммы, чтобы показать корреляцию между Global.log.CD8.Density
а также Weight
для каждого Signature
и отобразил значение p.value, используя следующий код:
ggplot(Global.log.CD8.Density,
mapping = aes(x=Weight, y=Global.log.CD8.Density))+
geom_point(aes(colour=Signature))+
facet_wrap(~Signature, nrow = 2)+
geom_smooth(method = "lm", se = F) +
stat_fit_glance(method = 'lm',
method.args = list(formula = y~x),
geom = 'text',
aes(label = paste( "italic (p)== ", signif(..p.value.., digits = 4))),
label.x.npc = "right", label.y.npc = 0.10,
size = 3, parse=TRUE)
Это вставляет p-значение корреляции Пирсона. Я хотел бы знать, есть ли способ изменить код для отображения корреляции Спирмена вместо этого. Я знаю, что вы можете сделать следующий код, чтобы получить результат:
Global.CD8.spearman <- Global.log.CD8.Density %>%
group_by(Signature) %>%
do(tidy(cor.test(.$Weight, .$Global.log.CD8.Density, method='spearman')))
ggplot(Global.log.CD8.Density, aes(Weight,Global.log.CD8.Density))+
geom_point(aes(colour=Signature))+
facet_wrap(~Signature, nrow = 2)+
geom_smooth(method = "lm", se = F) +
geom_text (data=Global.CD8.spearman,
aes(0.55,0.55,label = ifelse(p.value>0.05,paste( "italic (p)== ",
signif(p.value, digits = 2)),"italic (p)<0.05")),
size = 3, parse=TRUE)
но мне было интересно, если есть способ изменить stat_fit_glance
или любой другой ggpmisc
инструмент, чтобы получить этот результат.
Большое спасибо
1 ответ
Благодарим за сообщение об этой проблеме! Я создал проблему и постараюсь решить ее до следующего выпуска ggpmisc. Проблема в том, что я думаю, непонимание того, какие ценности stat_fit_glance()
возвращается. Столбцы названы как возвращенные broom:glance()
, Я добавил пример в версию ggpmisc для разработки, которая будет представлена в CRAN как версия 0.3.0.