Я пытаюсь создать блок-график, который показывает только значимые значения p в группах для каждого столбца на блок-графике. Например, здесь сравниваются I1 и SI2 для «удовлетворительного», «хорошего», «очень хорошего» и т. Д. c
![enter image description here](https://i.stack.imgur.com/MHelQ.png)
I ' мы пытались использовать следующий код для достижения вышеуказанного графика
library(ggplot2)
library(dplyr)
data("diamonds")
labeldat <- diamonds %>%
group_by(cut, clarity) %>%
dplyr::summarise(labels = paste(n(), n_distinct(color), sep = "\n"))
Comparisons = list(c("I1","SI2"),c("I1","SI1"),c("I1","VS2"),c("I1","VS1"),c("I1","VVS2"),c("I1","VVS1"),c("I1","IF"),
c("SI2","SI1"),c("SI2","VS2"),c("SI2","VS1"),c("SI2","VVS2"),c("SI2","VVS1"),c("SI2","IF"),
c("SI1","VS2"),c("SI1","VS1"),c("SI1","VVS2"),c("SI1","VVS1"),c("SI1","IF"),
c("VS2","VS1"),c("VS2","VVS2"),c("VS2","VVS1"),c("VS2","IF"),
c("VS1","VVS2"),c("VS1","VVS1"),c("VS1","IF"),
c("VVS2","VVS1"),c("VVS2","IF"),
c("VVS1","IF"))
ggplot(diamonds, aes(x=cut, y=price)) +
geom_boxplot(aes(fill=clarity), position = position_dodge2(width=0.75)) +
theme_bw() +
geom_text(data = labeldat, aes(x = cut, y = -250, label = labels), hjust = 0.5, position = position_dodge2(width = .75))+
stat_compare_means(aes(group=clarity), label = "p.signif", method="t.test", comparisons = Comparisons)
К сожалению, использование аргумента сравнения кажется из-за ошибки вычисления, которую я не могу решить, как ее решить: Предупреждение: Ошибка вычисления в stat_signif()
: пропущенное значение, где требуется ИСТИНА / ЛОЖЬ
Я попытался запустить это без сравнений, но, похоже, просто дает мне общий балл